文章目录
1. map的介绍和使用
map 的介绍:
- map 是关联容器,它按照特定的次序(按照 key 来比较)存储由键值 key 和值 value 组合而成的元素。
- 在 map 中,键值 key 通常用于排序和唯一的标识元素,而值 value 中存储与此键值 key关联的内容。键值 key 和值 value 的类型可能不同,并且在 map 的内部,key 与 value 通过成员类型
value_type
绑定在一起,为其取别名称为pair
:typedef pair<const key, T> value_type;
- 在内部,map 中的元素总是按照键值 key 进行比较排序的。
- map 中通过键值访问单个元素的速度通常比 unordered_map 容器慢,但 map 允许根据顺序对元素进行直接迭代(即对 map 中的元素进行迭代时,可以得到一个有序的序列)。
- map 支持下标访问符,即在
[]
中放入 key,就可以找到与 key 对应的 value。 - map 通常被实现为二叉搜索树(更准确的说:平衡二叉搜索树(红黑树))。
🍑 map的模板参数列表
如下图所示:
key
: