C++Primer 5th Chap9 Sequential Container(未完)
Posted hfut-freshguy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++Primer 5th Chap9 Sequential Container(未完)相关的知识,希望对你有一定的参考价值。
vector | 可变大小数组,支持快速随机访问(在除了尾部之外部分插入删除元素很慢) |
deque | 双端队列,支持快速随机访问(在头尾插入删除元素很快) |
list | 双向链表,仅支持双向顺序访问(在任何位置插入删除元素都很快) |
forward_list | 单向链表,仅支持单向顺序访问(在任何位置插入删除元素都很快) |
array | 固定大小数组,支持快速随机访问,不能插入删除元素 |
string | 仅支持保存字符的类似vector容器 |
tips:通常使用vector是最好的选择,当然如有必要也可选择其他容器
如果不确定使用哪种容器,可以只使用vector和list公共的操作:iterator,无下标,避免随机访问
iterator:
注意:forward_list不支持递减运算符(--)
vector和string的迭代器运算同样支持deque和array
如果begin==end,范围为空(否则范围内至少有一个元素,若干次递增begin可以使得begin==end)
容器类型成员:(详情见Chap16)
需要元素类型,使用容器的value_type
需要元素类型的一个引用,使用reference或const_reference
例如: list<string>::iterator iter;
vector<int>::difference_type count;
begin和end成员:
//显式指定类型 list<string>::iterator it3=a.begin();
//c++11 auto it2=a.begin();或auto it4=a.cbegin();(it4 是const_iterator)
以上是关于C++Primer 5th Chap9 Sequential Container(未完)的主要内容,如果未能解决你的问题,请参考以下文章
C++Primer 5th Chap8 The IO Library(未完)
C++Primer 5th Chap10 Generic Algorithms(未完)
C++ Primer 5th笔记(chap 19 特殊工具与技术)链接指示: extern “C“
C++ Primer Lippman 5th 练习 2.27 b