• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C语言 > c++中map的基本用法和嵌套用法实例分析

c++中map的基本用法和嵌套用法实例分析

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-28

通过本文主要向大家介绍了c++ map用法,c++中map的用法,c++中map,c++ map,c++ unordered map等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

本文实例讲述了c++中map的基本用法和嵌套用法。分享给大家供大家参考。具体分析如下:

C++中map容器提供一个键值对容器,map与multimap差别仅仅在于multiple允许一个键对应多个值。本文主要总结一下map基本用法和嵌套用法示例。

一、map基本用法

1. 头文件

2. 定义
或者是
MY_MAP my_Map;</div>

3. 插入数据
(1) my_Map[1]   =   1;
(2) my_Map.insert(map<int, int>::value_type(2,2));
(3) my_Map.insert(pair<int,int>(3,3));
(4) my_Map.insert(make_pair<string,int>(4,4));

4. 查找数据和修改数据
(1)     my_Map[1] = i;</div>
(2)     my_Itr.find(2);
    int j = my_Itr->second;
    my_Itr->second = j;</div>
注意:
A.键本身是不能被修改的,除非删除。
B.不管键存不存在,比如my_Map[1]   =   i;,都会执行赋值操作。
 
5. 删除数据
(1) my_Map.erase(my_Itr);
(2) my_Map.erase(3);

 
6. 遍历数据

7. 其它方法
my_Map.size() :返回元素数目
my_Map.empty():判断是否为空
my_Map.clear() :清空所有元素

二、嵌套用法

1.示例如下:
map<int, int> temp;    //定义一个map<int, string>变量,对其定义后在插入multiMap   
temp[9] = 9;   
temp[10] = 10;   
multiMap[10] = temp;   
multiMap[10][11]=11;    
multiMap[5][30]=30;   
map<int,map<int,int> >::iterator multitr;  // 以下是如何遍历本multiMap   
map<int,int>::iterator intertr;   
for(multitr=multiMap.begin();multitr!=multiMap.end();multitr++)   
{  
    for(intertr= multitr ->second.begin(); intertr != multitr ->second.end(); intertr ++)   
        cout<< multitr ->first<<" "<<intertr->first<<" ("<<intertr -> second <<")"<<endl;   
}</div>

2.也可以这样:
map<int, int>* temp = new map<int, int>; 
multiMap[10]=temp;</div>

这样动态new内存,就要记得delete,否则会有内存泄露,delete如下:
for(multitr=multiMap.begin();multitr!=multiMap.end();multitr++)   
{  
    temp1 = multitr ->second; 
        delete  temp1; 
        temp1 = NULL; 
}</div>

希望本文所述对大家的C++程序设计有所帮助。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • c++中map的基本用法和嵌套用法实例分析
  • C++模板类的用法
  • 基于C++ map中key使用指针问题的详解
  • c++ map,mutimap删除问题分析

相关文章

  • 2017-05-28DHCP:解析开发板上动态获取ip的2种实现方法详解
  • 2017-05-28c/c++中变量的声明和定义深入解析
  • 2017-05-28利用C++实现从std::string类型到bool型的转换
  • 2017-05-28浅谈C++ 基类指针和子类指针的相互赋值
  • 2017-05-28C语言 表、栈和队列详解及实例代码
  • 2017-05-28深入理解大数与高精度数的处理问题
  • 2017-05-28c++中struct使用注意事项
  • 2017-05-28C++ 设置透明背景图片
  • 2017-05-28关于"引用"的几点说明介绍
  • 2017-05-28C语言实现汉诺塔游戏

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • C++求阶乘的两种方法
    • C++ 模版双向链表的实现详解
    • 电脑开机时间的计算代码
    • 浅谈c++构造函数问题,初始化和赋值问题
    • 详解桶排序算法的思路及C++编程中的代码实现
    • C语言中设置用户识别码的相关函数的简单讲解
    • C++ COM编程之QueryInterface函数(二)
    • C++ 动态创建按钮及 按钮的消息响应
    • c++静态局部变量和静态函数示例
    • C语言小程序 数组操作示例代码

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有