#include <iostream>
#include <list>
/*
push_back(elem);/在容器尾部加入一个元素
pop_back();/删除容器中最后一个元素
push_front(elem);/在容器开头插入一个元素
pop_front0;/从容器开头移除第一个元素
insert(pos,elem);/在pos位置插elem元素的拷贝,返回新数据的位置。
insert(pos,n,elem);/在pos位置插入n个elem数据,无返回值。
insert(pos,beg,end);//在pos位置插入[beg,end)区间的数据,无返回值。
clear();/移除容器的所有数据
erase(beg,end);/删除[beg,end)区间的数据,返回下一个数据的位置。
erase(po);/删除pos位置的数据,返回下一个数据的位置。
remove(elem);/删除容器中所有与elem值匹配的元素。
*/
using namespace std;
void printList(const list<int> &mlist)
{
for( list<int>::const_iterator it = mlist.begin();it != mlist.end();it++)
{
cout<<*it<<" ";
}
cout<<endl;
}
void test()
{
list<int> mlist;
mlist.push_back(10);
mlist.push_back(20);
mlist.push_back(30);
printList(mlist);
if (mlist.empty())
{
cout<<"list is empty"<<endl;
}else {
cout<<"list is not empty"<<endl;
cout<<mlist.size()<<endl;
}
// mlist.resize(10);
// printList(mlist);
mlist.resize(20,10000);
printList(mlist);
mlist.resize(3);
printList(mlist);
}
void test02()
{
list<int> myL;
// push_back(elem);/在容器尾部加入一个元素
myL.push_back(10);
myL.push_back(20);
myL.push_back(30);
printList(myL);
// pop_back();/删除容器中最后一个元素
myL.pop_back();
printList(myL);
// push_front(elem);/在容器开头插入一个元素
myL.push_front(11);
myL.push_front(22);
printList(myL);
// pop_front();/从容器开头移除第一个元素
myL.pop_front();
printList(myL);
// insert(pos,elem);/在pos位置插elem元素的拷贝(迭代器方式),返回新数据的位置。
myL.insert(myL.begin(),99);
printList(myL);
myL.insert(myL.end(),999);
printList(myL);
// insert(pos,n,elem);/在pos位置插入n个elem数据,无返回值。
myL.insert(myL.end(),3,100);//最后加入三个一百
printList(myL);
// erase(beg,end);/删除[beg,end)区间的数据,返回下一个数据的位置。
// myL.erase(myL.begin(),myL.end());
// printList(myL);
// erase(pos);/删除pos位置的数据,返回下一个数据的位置。
myL.erase(myL.begin());
printList(myL);
list<int>::iterator it;
it = myL.begin();
myL.erase(++it);
printList(myL);
// remove(elem);/删除容器中所有与elem值匹配的元素。
myL.remove(100);
printList(myL);
// clear();/移除容器的所有数据
myL.clear();
printList(myL);//为空
}
int main()
{
// test();
test02();
return 0;
}
C++ List详细使用实例
最新推荐文章于 2024-04-29 20:16:41 发布