Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

แสดงรายการฟังก์ชัน push_front() ใน C ++ STL


ในบทความนี้เราจะพูดถึงการทำงาน ไวยากรณ์และตัวอย่างของฟังก์ชัน push_front () ใน C++

รายการใน STL คืออะไร

รายการเป็นโครงสร้างข้อมูลที่อนุญาตให้แทรกและลบเวลาคงที่ได้ทุกที่ตามลำดับ รายการถูกนำไปใช้เป็นรายการที่เชื่อมโยงเป็นสองเท่า รายการอนุญาตการจัดสรรหน่วยความจำที่ไม่ต่อเนื่องกัน List ทำการดึงการแทรกและย้ายองค์ประกอบได้ดีกว่าในตำแหน่งใดๆ ในคอนเทนเนอร์ มากกว่าอาร์เรย์ เวกเตอร์ และ deque ใน List การเข้าถึงองค์ประกอบโดยตรงนั้นช้าและ list นั้นคล้ายกับ forward_list แต่ออบเจกต์ของรายการส่งต่อเป็นรายการที่เชื่อมโยงเพียงรายการเดียว และสามารถทำซ้ำได้เพียงส่งต่อเท่านั้น

push_front() คืออะไร

push_front() เป็นฟังก์ชัน inbuilt ใน C ++ STL ซึ่งประกาศไว้ในไฟล์ส่วนหัว push_front() ใช้เพื่อผลัก (แทรก) องค์ประกอบที่จุดเริ่มต้นของคอนเทนเนอร์รายการ หากคอนเทนเนอร์ว่างเปล่า มันจะผลักองค์ประกอบที่ตำแหน่งแรกและองค์ประกอบนั้นจะกลายเป็นองค์ประกอบแรก และหากคอนเทนเนอร์มีองค์ประกอบอยู่ก่อนหน้า ฟังก์ชันจะผลักองค์ประกอบที่ส่งผ่านไปยังองค์ประกอบนั้นไปข้างหน้าและองค์ประกอบที่มีอยู่ซึ่งอยู่ในตำแหน่งแรก จะกลายเป็นองค์ประกอบที่สอง ฟังก์ชันนี้จะเพิ่มขนาดของคอนเทนเนอร์ขึ้น 1

ไวยากรณ์

void push_front (const value_type& element1);
void push_front (value_type&& element1);
This function accepts only 1 element which is to be pushed/inserted.

ผลตอบแทนที่ได้รับ

ฟังก์ชันนี้ไม่ส่งคืนสิ่งใด

ตัวอย่าง

#include <bits/stdc++.h>
using namespace std;
int main(){
   //create a list
   list myList;
   //insert elements
   myList.push_back(1);
   myList.push_back(2);
   myList.push_back(3);
   myList.push_back(4);
   //List before applying push_front()
   cout<<"List : ";
   for (auto i = myList.begin(); i!= myList.end(); i++)
      cout << *i << " ";
   //calling push_front()
   myList.push_front(0);
   cout<<"\nList after calling push_front() : ";
   for (auto i = myList.begin(); i!= myList.end(); i++)
      cout << *i << " ";
   return 0;
}

ผลลัพธ์

หากเรารันโค้ดด้านบน มันจะสร้างผลลัพธ์ต่อไปนี้

List : 1 2 3 4
List after calling push_front(): 4 3 2 1

ตัวอย่าง

#include <iostream>
#include <list>
int main (){
   //adding two integer values with the value 30
   std::list<int> myList (2,30);
   myList.push_front (20);
   myList.push_front (10);
   std::cout<<"elements in my list are : ";
   for (std::list<int>::iterator i = myList.begin(); i!= myList.end(); ++i)
      std::cout << ' ' << *i;
   std::cout << '\n';
   return 0;
}

ผลลัพธ์

หากเรารันโค้ดด้านบน มันจะสร้างผลลัพธ์ต่อไปนี้

Elements in my list are : 10 20 30 30