map不能存储键值相同的值,第二个会把第一个覆盖,并会自动按照键值进行从小到大排序
Multimap可以存储相同的键值,并进行排序,这个运用就是比如一个学生有多个成绩,遍历的时候,count(name),知道这个学生的名字的个数,然后遍历
头文件:#include<map>
初始化:map<char,int> s
迭代器遍历:
map<char,int>::iterator it;
for(it=m.begin();it!=m.end();it++){
cout<<it->first<<":"<<it->second<<endl;//第一个是键,第二个是值
}
常用接口:
size();
iterator erase (iterator position);//删除
clear();//清空
cout<<m.find('a')->second<<endl;//根据键值可以查找对应的值
插入的方式,有两种:
第一种:m['c']=1;
m.insert(pair<char,int>('c',1));