ในบทความนี้เราจะพูดถึงการทำงาน ไวยากรณ์และตัวอย่างของฟังก์ชัน list::pop_front() และ list::pop_back() ใน C++ STL
รายการใน STL คืออะไร
รายการเป็นโครงสร้างข้อมูลที่อนุญาตให้แทรกและลบเวลาคงที่ได้ทุกที่ตามลำดับ รายการถูกนำไปใช้เป็นรายการที่เชื่อมโยงเป็นสองเท่า รายการอนุญาตการจัดสรรหน่วยความจำที่ไม่ต่อเนื่องกัน List ทำการดึงการแทรกและการย้ายองค์ประกอบได้ดีกว่าในตำแหน่งใดๆ ในคอนเทนเนอร์มากกว่าอาร์เรย์ เวกเตอร์ และ deque ใน List การเข้าถึงองค์ประกอบโดยตรงนั้นช้าและ list นั้นคล้ายกับ forward_list แต่ออบเจกต์ของรายการส่งต่อเป็นรายการที่เชื่อมโยงเพียงรายการเดียว และสามารถทำซ้ำได้เพียงส่งต่อเท่านั้น
forward_list::pop_front() คืออะไร
list::pop_front() เป็นฟังก์ชัน inbuilt ใน C++ STL ซึ่งประกาศไว้ในไฟล์ส่วนหัว pop_front() ใช้เพื่อป๊อป/ลบองค์ประกอบที่อยู่ในจุดเริ่มต้นของรายการ เมื่อเราใช้ฟังก์ชันนี้ องค์ประกอบแรกที่มีอยู่แล้วในคอนเทนเนอร์จะถูกลบออก และองค์ประกอบถัดไปไปยังองค์ประกอบแรกจะกลายเป็นองค์ประกอบแรกของคอนเทนเนอร์รายการ และขนาดของคอนเทนเนอร์จะลดลง 1
ไวยากรณ์
list_container1.pop_front ();
พารามิเตอร์
ฟังก์ชันนี้ไม่รับพารามิเตอร์ใดๆ
ผลตอบแทนที่ได้รับ
ฟังก์ชันนี้ไม่ส่งคืนสิ่งใด
ตัวอย่าง
Input: list<int> List_container= {10, 11, 13, 15}; List_container.pop_front(); Output: List = 11 13 15
ตัวอย่าง
#include <iostream> #include <list> using namespace std; int main(){ list<int> myList_1 = {}, myList_2 = {}; myList_1.push_front(10); myList_1.push_front(20); myList_1.push_front(30); myList_1.push_front(40); myList_1.push_front(50); while (!myList_1.empty()){ myList_2.push_front(myList_1.front()); myList_1.pop_front(); } cout<<"Elements in the list are : "; for (auto i = myList_2.begin(); i!= myList_2.end(); ++i) cout << ' ' << *i; }
ผลลัพธ์
หากเราเรียกใช้โค้ดข้างต้น มันจะสร้างผลลัพธ์ต่อไปนี้ -
Elements in the list are : 10 20 30 40 50
รายการ::pop_back() คืออะไร
list::pop_back() เป็นฟังก์ชัน inbuilt ใน C++ STL ซึ่งประกาศไว้ในไฟล์ส่วนหัว pop_back() ใช้เพื่อลบ/เปิดองค์ประกอบจากด้านหลังหรือคอนเทนเนอร์รายการสุดท้าย เมื่อเราใช้ pop_back มันจะลบ/เปิดองค์ประกอบสุดท้ายและองค์ประกอบก่อนที่องค์ประกอบสุดท้ายจะกลายเป็นองค์ประกอบสุดท้าย และขนาดของคอนเทนเนอร์รายการจะลดลง 1
ไวยากรณ์
list_container.pop_back();
พารามิเตอร์
ฟังก์ชันนี้ไม่รับพารามิเตอร์ใดๆ
ผลตอบแทนที่ได้รับ
ฟังก์ชันนี้ไม่ส่งคืนสิ่งใด
ตัวอย่าง
Input: list<int> List_container= {10, 11, 13, 15}; List_container.pop_back(); Output: List = 10 11 13
ตัวอย่าง
#include <iostream> #include <list> using namespace std; int main(){ list<int> myList_1 = {}, myList_2 = {}; myList_1.push_front(10); myList_1.push_front(20); myList_1.push_front(30); myList_1.push_front(40); myList_1.push_front(50); while (!myList_1.empty()){ myList_2.push_front(myList_1.back()); myList_1.pop_back(); } cout<<"Elements in the list are : "; for (auto i = myList_2.begin(); i!= myList_2.end(); ++i) cout << ' ' << *i; }
ผลลัพธ์
หากเราเรียกใช้โค้ดข้างต้น มันจะสร้างผลลัพธ์ต่อไปนี้ -
Elements in the list are : 50 40 30 20 10