ACM c++ map容器基本操作

map是一类关联式容器,它是模板类。map容器提供一个键值对容器,map与multimap差别仅仅在于multiple允许一个键对应多个值


//map的定义
(1)map<int,string>m;
(2)typedef map<int,string> MAP;
    MAP m;


//插入元素
(1)m.insert(pair<string,int>("c",1));
(2)m["c"]=1;
(3)m.insert(make_pair<string,int>("c",1));
(4)m.insert(map<string,int>::value_type("b",2));


map<int ,string> maplive;  
   1.maplive.insert(pair<int,string>(102,"aclive"));
   2.maplive.insert(map<int,string>::value_type(321,"hai"));
   3, maplive[112]="April";//map中最简单最常用的插入添加!


//元素查找
map.count(k) : 返回map中键k的出现次数(对于map而言,由于一个key对应一个value,因此返回只有0和1,因此可以用此函数判断k是否在map中)
map.find(k) :  返回map中指向键k的迭代器,如果不存在键k,则返回超出末端迭代器。
   map<int ,string >::iterator l_it;; 
   l_it=maplive.find(112);
   if(l_it==maplive.end())  cout<<"NO"<<endl;




//  删除数据 
  (1)   m.erase(my_Itr); 
  (2)   m.erase("c"); 


//交换。Map中的swap不是一个容器中的元素交换,而是两个容器交换;


 my_Map.size()               返回元素数目 
 my_Map.empty()       判断是否为空 
 my_Map.clear()           清空所有元素 

你可能感兴趣的:(STL)