map详细解说请看该博客:点击打开链接
基本操作代码如下:
#include<iostream>
#include<map>
#include<string>
using namespace std;
int main(){
//key_type, value_type
map<int,string> mapStudent;
mapStudent.insert(pair<int,string>(1,"wj"));//添加
mapStudent.insert(pair<int,string>(2,"love"));
mapStudent.insert(pair<int,string>(3,"dy"));
mapStudent.insert(pair<int,string>(4,"!!!"));
cout<<mapStudent[3]<<endl<<endl;
map<int,string>::iterator it;//正向遍历
for(it = mapStudent.begin();it != mapStudent.end();it++)
cout<<it->first<<" "<<it->second<<endl;
cout<<endl;
map<int,string>::reverse_iterator r_it;//反向遍历
for(r_it = mapStudent.rbegin();r_it != mapStudent.rend();r_it++)
cout<<r_it->first<<" "<<r_it->second<<endl;
cout<<endl;
mapStudent.erase(4);//通过key删除
for(it = mapStudent.begin();it != mapStudent.end();it++)
cout<<it->first<<" "<<it->second<<endl;
cout<<endl;
mapStudent[5] = "~~~";//直接通过key-value插入
for(it = mapStudent.begin();it != mapStudent.end();it++)
cout<<it->first<<" "<<it->second<<endl;
cout<<endl;
string s = mapStudent[1];//通过下标取值
cout<<s<<endl<<endl;
map<int,string>::iterator key = mapStudent.find(3);//查找是否有key
if(key!=mapStudent.end())//表示找到这个值
cout<<key->second<<endl;
return 0;
}
运行结果如下: