C++ STL 中的 pop_front() 函数
在本文中,我们将讨论 C++ 中 pop_front() 函数的工作原理、语法和示例。
什么是 STL 中的列表
列表是一种数据结构,它允许在序列中的任何位置进行常数时间插入和删除操作。列表以双向链表的形式实现。列表允许非连续内存分配。与数组、向量和双端队列相比,列表在容器的任何位置插入、提取和移动元素方面表现更好。在列表中,直接访问元素的速度很慢,并且列表类似于 forward_list,但 forward_list 对象是单向链表,它们只能向前迭代。
什么是 pop_front()
pop_front() 是 C++ STL 中的一个内置函数,它在头文件中声明。pop_front() 用于从列表容器的开头弹出(删除)元素。该函数删除列表容器的第一个元素,这意味着容器的第二个元素成为第一个元素,并且容器中的第一个元素从容器中移除。此函数将容器的大小减少 1。
语法
void pop_front ();
此函数不接受任何参数。
返回值
此函数不返回任何内容,只是从容器中移除/弹出第一个元素。
示例
#include <bits/stdc++.h> using namespace std; int main(){ //create a list list<int> myList; //inserting elements to the list myList.push_back(1); myList.push_back(2); myList.push_back(3); myList.push_back(4); //List before applying pop_front() function cout<<"List contains : "; for(auto i = myList.begin(); i != myList.end(); i++) cout << *i << " "; //removing first element using pop_front() myList.pop_front(); // List after removing element from front cout<<"\nList after removing an element from front: "; for (auto i = myList.begin(); i != myList.end(); i++) cout << *i << " "; return 0; }
输出
如果我们运行以上代码,它将生成以下输出
List contains : 1 2 3 4 List after removing an element from front: 2 3 4
示例
#include <iostream> #include <list> int main (){ std::list<int> myList; myList.push_back (10); myList.push_back (20); myList.push_back (30); std::cout<<"removing the elements in a list : "; while (!myList.empty()){ std::cout << ' ' << myList.front(); myList.pop_front(); } std::cout<<"\nSize of my empty list is: " << myList.size() << '\n'; return 0; }
输出
如果我们运行以上代码,它将生成以下输出
removing the elements in a list : 10 20 30 Size of my empty list is: 0
广告