c++ map容器使用及问题
2024-08-22 06:36:13
C++ STL库map容器一些总结,欢迎大家指正补充。
map容器由两部分组成,分别为关键字(Key)和值(Value),关键字和值都可以声明为任意类型的数据,注意:关键字唯一,不能重复!使用需包含头函数#include<map>
一、声明
(1)std::map<Key,Value> Name ,//容器声明
例1:std::map<int,string> name
(2)std::map<Key,Value>::iterator it //迭代器声明
二、插入数据
(1)insert pair
name.insert(pair<Key,Value>(key,value))
(2)insert value_type
name.insert(map<Key,Value>::value_type(key,value))
(3)insert make_pair
name.insert(make_pair(key,value))
(4)insert{}
(5)数组插入
name[key]=value
插入注意事项:
注意1:使用insert进行插入数据时,如果已存在Key,则不会执行,插入失败,使用数组插入,
注意2:使用数组插入,如果已存在Key,则更新Key的Value
三、删除数据
(1) erase 指定关键字为key的元素
(2)erase 指定位置的数据
name.ease(it)
(2)erase 删除一定范围的数据
name.erase(it_L,it_R)
(3)clear 清空容器的内容
name.clear()
四、遍历
遍历有两种,1、迭代器遍历,2、c++11特性基于范围的for循环配合auto使用。
最新文章
- vs2015 HTTP Error 400. The request hostname is invalid.
- VMware创建Linux虚拟机并安装CentOS(一)
- 详解APM数据采样与端到端
- Win7_关闭休眠文件hiberfil.sys
- RabbitMQ介绍1 - 由来
- dos查看端口
- 实现微信文章页面 http://mp.weixin.qq.com/s?__biz=MjM5MDI3OTAwMg==&;amp;mid=200337417&;amp;idx=1&;amp;sn=5959ed1d722c7da66b
- 在Linux上怎么安装和配置DenyHosts工具
- 学习pthreads,创建和终止多线程
- angularjs的directive详解
- 学习Sass(一)
- [转] 用Maven搭建多模块企业级项目
- Docker私有仓库--自签名方式
- Android快速实现上传项目到Github
- python爬微信公众号前10篇历史文章(6)-话说http cookies
- static class 静态类(Java)
- TCP浅谈为什么3次握手
- elementui左侧菜单栏刷新后还是原来的状态
- latex数学公式
- Click event doesn&#39;t work on dynamically generated elements