map就是映射,可以将任意基本类型映射到其他任意基本类型。
map的几个特性,里面的键值是唯一的,如果有重复就会覆盖前一个。
而且如果遍历访问的话,容器里面会自动实现从小到大的排序的。
目录
1.map定义
map<typename 1, typename 2> mp;
前面为建key,后面为值value。
2.map容器内元素的访问
(1).通过下标,将key作为下标。
(2).通过迭代器 map<typename 1, typename 2>::iterator it;
这样就可以得到迭代器it.
然后使用it->first 访问键,it->second 访问值。
3.map常用的函数的解析
(1) find(key),直接返回键值为key的映射的迭代器 如果找不到返回end().
(2) erase()
里面可以是迭代器,也可以是键,也可以是一个区间。
(3) size() 返回的是map映射的对数。
(4) clear()清空map中所有元素
(5) count(),可以计算一个键值出现的次数,因此可以用来判断是否存在一个键。
4.延申
可以用unordered_map来替代map,用散列来代替map内部的红黑树实现,但是牺牲了排序功能,速度会比map更快。