开发者

c++中map容器的使用详解

目录
  • 一、map的说明
    • 1头文件
    • 2定义
    • 3插入数据
      • 第一种:用insert函数插入pair数据,下面举例说明:
      • 第二种:用insert函数插入value_type数据,下面举例说明:
      • 第三种:用数组方式插入数据,下面举例说明:
    • 4查找数据和修改数据
      • 5删除数据
        • 6迭代数据
          • 7其它方法

          C++中map容器提供一个键值对容器,map与multimap差别仅仅在于multiple允许一个键对应多个值。

          一、map的说明

          1头文件

          #include <map>

          2定义

          map<string,int>my_Map;

          或者是

          typedefmap<string,int>M编程客栈Y_MAP; MY_MAPmy_Map;

          3插入数据

          my_Map["a"]=1; 
          my_Map.insert(map<string,int>::value_type("b",2));
          my_Map.insert(pair<string,int>("c",3));
          my_Map.insert(make_pair<string,int>("d",4));

          第一种:用insert函数插入pair数据,下面举例说明:

          c++中map容器的使用详解

          第二种:用insert函数插入value_type数据,下面举例编程说明:

          c++中map容器的使用详解

          第三种:用数组方式插入数据,下面举例说明:

          c++中map容器的使用详解

          4查找数据和修改数据

          int   i   =   my_Map["a"]; 
             my_Map["a"]   =   i; 
          MY_MAP::iterator   my_Itr; 
             my_Itr.find("b"); 
             int   j   =   my_Itr->second; 
             mjavascripty_Itr->secjavascriptond   =   j; 

          不过注意,键本身是不能被修改的,除非删除。

          5删除数据

          my_Map.erase(my_Itr);
          my_Map.erase("c"); 

          还是注意,第一种情况在迭代期间是不能被删除的,道理和foreach时不能删除元素一样。

          6迭代数据

          for(my_Itr=my_Map.begin();my_Itr!=my_Map.end();++my_Itr){
          }    

          7其它方法

          my_Map.size() 返回元素数目

          my_Map.empty() 判断是否为空

          my_Map.clear() 清空所有元素

          可以直接进行赋值和比较:=,python >, >=, <, <=, != 等等

          到此这篇关于c++中map容器的使用详解的文章就介绍到这了,更多相关c++中的map容器内容请搜索编程客栈(www.devze.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程客栈(www.devze.com)!

          0

          上一篇:

          下一篇:

          精彩评论

          暂无评论...
          验证码 换一张
          取 消

          最新开发

          开发排行榜