- 功能:对list容器进行数据的插入和删除
- 函数原型:
- push_back(elem); //在容器尾部加入一个元素
- pop_back(); //删除容器中最后一个元素
- push_front(elem); //在容器开头插入一个元素
- pop_front(); //删除容器第一个数据
- insert(pos, elem); //在pos位置插入elem元素的拷贝,返回数据的位置
- insert(pos, n, elem); //在pos位置插入n个elem数据,无返回值
- insert(pos, begin, end); //在pos位置插入[ begin, end)区间的数据,无返回值
- clear(); 删除容器中的所有数据
- erase(begin, end); //删除 [ begin, end)区间的数据,返回下一个数据的位置
- erase(pos); //删除pos位置的数据,返回下一个数据的位置
- remove(elem); //删除容器中所有与elem值匹配的元素
#include<iostream> #include<list> using namespace std; void printlist(const list<int> &L) { for(list<int>::const_iterator it=L.begin();it!=L.end();it++) cout<<*it<<" "; cout<<endl; } void test1() { list<int> L; //尾插 L.push_back(1); L.push_back(2); L.push_back(3); //头插 L.push_front(6); L.push_front(5); L.push_front(4); printlist(L); //4 5 6 1 2 3 //尾删 L.pop_back(); printlist(L); //4 5 6 1 2 //前删 L.pop_front(); printlist(L); //5 6 1 2 //insert插入 list<int>::iterator it=L.begin(); L.insert(++it, 666); printlist(L); //5 666 6 1 2 //删除 it =L.begin(); L.erase(++it); printlist(L); //5 6 1 2 //移除 list<int>::iterator idx=L.begin(); L.insert(++idx,3,2); printlist(L); //5 2 2 2 6 1 2 L.remove(2); printlist(L);// 5 6 1 } int main() { test1(); return 0; }