一.迭代器
迭代器模式 相当于指向容器的指针
定义迭代器
内部重载了* ++ -> 可以向指针一样使用
二.array与vector
遍历容器时, .at()相当于中括号,比下标访问更安全,可以自动检测,越界会返回异常
earse会改变结构,使用时用迭代器记录返回值
capacity 返回空间大小
size返回实际元素大小
三.list链表
list链表
push_back 尾部添加
push_front头部添加
pop_back删尾部
front得到头节点引用
begin是头节点迭代器
四.map与set
map有键值和实值,键值不能修改
count(键值)查询键值是否存在
无序map头文件<unordered_map>
区别只是不排序
容器.earse(迭代器)删除迭代器指向的元素
五.容器实现原理
array vector 数组
deque 多段连续空间
list 双向链表
map set 红黑树
unordered_map unordered_set 哈希表
stack queue 双端队列砍枝
六.一些算法
全局函数 for_each(容器迭代器起始位置,结束位置,干什么的函数地址);
干什么函数(容器内的类型(map传pair的引用))
{函数主体}