HNFMS一个初二蒟蒻OIerの实验室

C++中的STL——map

什么是map

map是C++的STL中的一个提供一对一关系的容器(key和value),说简单点就是高级数组,你可以使用任何定义了“<”操作类型作为map的key,任何类型作为map的value。

value的使用

定义一个map

map<type,type > name;
// 以下为示例
   map<string , int >mapstring;
   map<int ,string >mapint;
   map<sring, char>mapstring;     
   map< char ,string>mapchar;
   map<char ,int>mapchar;   
   map<int ,char >mapint;

map的操作

插入一个元素

   map<int ,string> maplive;  
   maplive.insert(pair<int,string>(102,"aclive"));//第一种
   maplive.insert(map<int,string>::value_type(321,"hai"));//第二种
   maplive[112]="April";//第三种

map中元素查找与删除

   map<int ,string >::iterator l_it;; 
   l_it=maplive.find(112);
   if(l_it==maplive.end())
                cout<<"we do not find 112"<<endl;
   else{
       cout<<"wo find 112"<<endl;
       maplive.erase(l_it);//删除112
   } 

map中的所有操作函数

      begin()          //返回指向map头部的迭代器
      clear()         //删除所有元素
      count()          //返回指定元素出现的次数
      empty()          //如果map为空则返回true
      end()            //返回指向map末尾的迭代器
      equal_range()    //返回特殊条目的迭代器对
      erase()          //删除一个元素
      find()           //查找一个元素
      get_allocator()  //返回map的配置器
      insert()         //插入元素
      key_comp()       //返回比较元素key的函数
      lower_bound()    //返回键值>=给定元素的第一个位置
      max_size()       //返回可以容纳的最大元素个数
      rbegin()         //返回一个指向map尾部的逆向迭代器
      rend()           //返回一个指向map头部的逆向迭代器
      size()           //返回map中元素的个数
      swap()            //交换两个map
      upper_bound()     //返回键值>给定元素的第一个位置
      value_comp()      //返回比较元素value的函数

标签: C++ STL

Title - Artist
0:00