容器用法规范
- vector 可变大小数组,支持快速随机访问,尾部之外插入删除集在机器上实用性不高
- deque 双向队列,支持快速随机访问,在头尾插入和删除集效果很好
- list 双向链表,只支持双向顺序访问,在任何位置插入和删除集效果都很好
- forward_list 单向链表,只支持单向顺序访问,在任何位置插入和删除集效果都很好
- array 固定大小数组,只适用于快速随机访问,没有对应的插入和删除集
- tring 特征同vector,但专门用于保存字符
容器初始化
- 拷贝初始化
list<string> authors = {"Milton","Shankespeare","Austen"};
vector<const char*> articles = {"a","an","the"};
list<string> list2(authors);
deque<string> author_list(authors);
vector<string> words(articles);
forward_list<string> words(articles.begin(),articles.end());
list<string> authors = {"Milton","Shankespeare","Austen"};
deque<string> auth_list(authors.begin(),authors.end());
- 列表初始化
list<string> authors = {"Milton","Shankespeare","Austen"};
- swap
vector<string> vec(10);
vector<string> vec2(24);
swap(vec2,vec);
- 容器操作集