map
- 功能:map实现的是映射关系,举个例子,在int型数组中,实现的就是整数到int的映射,比如a[5]=6,就实现了整数下标5,和int型的6的映射。在一本字典中,比如456页有一个dad单词,就实现了456和一个string的映射关系。那为什么要引入map呢,因为数组只能实现数组下标和数组类型的映射,但是你想实现double和double,或者string和doule映射都是实现不了的。map就是为了解决这功能而生的。
- map的引入:include
- map的定义:map<type1,type2> mp; map的参数有两个,就是映射的key和value键值对(和python的字典一样),第一个参数是键,第二个参数是值。
- map的访问方式1:通过下标访问,比如定义
mp['k]]=20
;访问也可以用同种方式访问。 - map的访问方式2:通过迭代器访问
map<type1,typq2>::iterator it;
就定义了一个名字叫it的,类型是type1指向type2的map的迭代器。如果令it=mp.begin()
,就让it指向了mp的开头位置。it->first可以获得键,it->可以获得值。
map常用函数
- map.find(key):返回key的迭代器;
- map.erase(it):擦除这个迭代器指向的键值对;
- map.erase(key):擦除这个键的键值对;
- map.size():获得map的规模,即几个键值对;
- map.clear():清空map;