c++ map容器使用及问题


C++ STL库map容器一些总结,欢迎大家指正补充。

map容器由两部分组成,分别为关键字(Key)和值(Value),关键字和值都可以声明为任意类型的数据,注意:关键字唯一,不能重复!使用需包含头函数#include

一、声明

(1)std::map Name ,//容器声明

例1:std::map name

(2)std::map::iterator it  //迭代器声明

二、插入数据

(1)insert pair
name.insert(pair(key,value))

 (2)insert value_type
name.insert(map::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使用。