map m;
//insert形式
m.insert({ 1,"ABC"});//这样就行
m.insert(2,make_pair(string("ABC")));
m.insert(map::value_type(3,"ABC"));
//数组形式
m[1]="efg";
//列表初始化
map m={{1,"duanjie"},{2,"yanwanli"}};
//数组赋值
m[3]="adc";
//insert添加
m.insert({ 4,"ABC"});
map>> m;
m[1]["abc"].push_back("ABC");
map m={{1,"abc"},{2,"def"}};
//第1种
map::iterator iter;
iter = m.begin();
while(iter != m.end()){
cout << iter->first << "-" << iter->second << endl;
iter++;
}
//第2种
for(auto &it : m){
cout << it.first << "-" << it.second <
map m;
for(map::reverse_iterator rit=m.rbegin();rit!=m.rend();rit++)
cout<<(*rit).first<<","<<(*rit).second<
//数组形式
map m;
int L=m.size();
for(int i=1;i<=L;i++){
cout<
map m={{1,"abc"},{2,"edf"}};
if(m.count(1)){
cout<<"YES"<
map m={{1,"abc"},{2,"edf"}};
map::iterator iter;
iter =m.find(1);
if(iter !=m.end())
{
cout<<"Find it :"<second<
例如:map中已经插入了1,2,3,4的话,如果lower_bound(2)的话,返回的2,而upper-bound(2)的话,返回的就是3,如果两个迭代器相等就意味着不存在这个关键字
map m={{1,"abc"},{4,"edf"}};
map::iterator iter1,iter2;
iter1 =m.lower_bound(2);
iter2=m.upper_bound(2);
if(iter1->first==iter2->first)
{
cout<<"Not Found!"<second<
iterator erase(iterator it);//通过一个条目对象删除
iterator erase(iterator first,iterator last)//删除一个范围
size_type erase(const Key&key);//通过关键字删除
//例如
map m={{1,"abc"},{4,"edf"}};
map::iterator iter1,iter2;
m.erase(1);
if(m.count(1)){
cout<<"Yes"<
enumMap.erase(enumMap.begin(),enumMap.end());