C++里面的map真是个好东西,就像python中的字典一样。比如python中的:

dict = {}
dict['hello'] = 'world'

在C++中就是:

map<char, char> dict;
dict["hello"] = "world";

下面我们来详细了解一下C++中的map;

首先,头文件#include<map>是不可少的

然后就是创建的格式:

map<param, param> name;

param是参数,可选int, float,char等等,必须有两个,不想python中没有类型限制,STL中限制了类型。第一个param是字典项,第二个是字典值,name是变量名。

1、插入和修改数据可以直接使用

dict["hello"] = "world";

这种格式,也可以使用insert函数。

2、迭代用法

map <int,int>::iterator dict_list;
 for ( dict_list = dict.begin( );dict+list!= dict.end( ); dict_list++ )

3、其他常用函数

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的函数