map容器插入数据之 map[] 和 insert 方式的分析

来源:互联网 发布:banner淘宝设计素材 编辑:程序博客网 时间:2024/05/20 20:44

  STL中的map是一个key-value的数据结构 ,每一个key对应着一个值,而且key是唯一的,底层采用红黑树的数据结构实现。在使用map的过程中,有两种方式进行数据的插入,第一种是使用下标的方式,也就是[],第二种是使用insert接口,它们主要的区别如下:
1. 下标的方式插入,如果原本key不存在则会先创建对应的记录,然后再进行赋值;
2. insert方式插入,如果key不存在,则插入记录,如果存在则什么都不做。

map<int, char> m;m[1] = 'a';                         // 首先初始化话m[1],然后在给m[1]赋值为'a'm[1] = 'b';                         // 修改m[1]的值为'b'm.insert<pair<int, char>(2, 'c')>   // key=2不存在,则插入该记录,m[2]的值为'c'm.insert<pair<int, char>(2, 'd')>   // key=2存在,则什么也不做,m[2]的值仍为'c'

参考:
http://blog.csdn.net/houzhuoming1/article/details/49508461

1 0