map是映射也是常用的STL容器,可以将任何基本类型映射到任何的基本类型,如 map<char,int>mp
一、基本定义
map<typename,typename>mp;
map<string,int>mp;
map<char,int>mp
当建立好映射之后,就可以使用mp['c']=20,这样和普通数组一样的方式,注意map的键是唯一的。
二、使用迭代器进行访问
map<typename1, typename2>::iterator it;
用it之后,就可以分别访问map的键和值,it->first来访问键和it->second来访问值。
mp['a']=40;
map会以键的大小来从小到大进行自动排序
三、常用函数
find(key);//返回key的映射的迭代器
mp['a']=1;
mp['b']=2;
mp['c']=3;
map<char,int>::iterator it=mp.find('b');
printf("%c %d",it->first,it->second);
mp.erase(it); //it为要删除元素的迭代器
mp.erase(first,last); //first为起始的迭代器,last为要删除的区间末尾迭代器的下一个[first,last)
mp.size(); //获得映射的对数
mp.clear(); //清除所有元素