list容器将元素按序存储在双向链表中(forward_list为同功能的单向链表),支持在任一位置限时的插入和删除,支持双向迭代遍历。优点:和其它标准顺序存储容器(array, vector, deque)相比,list容器更好的支持任意位置元素的插入、删除和移动操作,适合以上操作频繁的算法,比如排序算法。缺点:随机访问(按位置访问元素)较慢。
常用函数:
begin()
end()
empty()
size()
max_size()
push_front()
pop_front()
push_back()
pop_back()
insert(position(迭代器),value(元素))
erase(position(迭代器))
remove(): remove elements with specific value
代码实例:
// remove from list
#include <iostream>
#include <list>
#include <iostream>
#include <list>
int main ()
{
int myints[]= {17,89,7,14};
std::list<int> mylist (myints,myints+4);
{
int myints[]= {17,89,7,14};
std::list<int> mylist (myints,myints+4);
mylist.remove(89);
std::cout << "mylist contains:";
for (std::list<int>::iterator it=mylist.begin(); it!=mylist.end(); ++it)
std::cout << ' ' << *it;
std::cout << '\n';
for (std::list<int>::iterator it=mylist.begin(); it!=mylist.end(); ++it)
std::cout << ' ' << *it;
std::cout << '\n';
return 0;
}
}