简化了:https://blog.csdn.net/xiaoquantouer/article/details/70339869
头文件
#include<list>
list<int> a;
list<int>a{1,2,3}
list<int>a(n) //声明一个n个元素的列表,每个元素都是0
list<int>a(n, m) //声明一个n个元素的列表,每个元素都是m
list<int>a(first, last) //声明一个列表,其元素的初始值来源于由区间所指定的序列中的元素,first和last是迭代器
begin()和end()
push_back()和push_front()
empty()
resize()
resize(n)
resize(n, m)
clear()
front()和back()
pop_back()和pop_front()
assign()
list<int>b{1,2,3,4,5};
b.assign(5,10);
b中的元素变为10, 10, 10, 10, 10
list<int>a{6,7,8,9};
list<int>b{1,2,3,4,5};
b.assign(a.begin(),a.end());
b中的元素变为6,7,8,9
swap()
a.swap(b)和swap(a, b)
reverse() //倒序
reverse(b.begin(),b.end());
merge()
-
list<int>a{6,7,8,9}; list<int>b{2, 1, 3, 6, 5}; a.merge(b,greater<int>());
a中元素变为:6,7,8,9,2,1,3,6,5
-
list<int>a{6,7,8,9}; list<int>b{2, 1, 3, 6, 5}; a.merge(b);
a中元素变为:2,1,3,6,5,6,7,8,9
insert()
a.insert(a.begin(),100); //在a的开始位置(即头部)插入100
a.insert(a.begin(),2, 100); //在a的开始位置插入2个100
a.insert(a.begin(),b.begin(), b.end());//在a的开始位置插入b从开始到结束的所有位置的元素
erase()
a.erase(a.begin()); //将a的第一个元素删除
a.erase(a.begin(),a.end()); //将a的从begin()到end()之间的元素删除
remove()函数
list<int>a{6,7,8,9,7,10};
a.remove(7);
删除了a中所有值为7的元素,此时a中元素为6,8,9,10