专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > 编程

STL学习之map器皿(2)_insert

发布时间:2011-07-01 07:27:23 文章来源:www.iduyao.cn 采编人员:星星草
STL学习之map容器(2)_insert

map::insert

插入元素

map容器可以插入单个新元素(如果使用参数x)或者元素序列(如果使用输入迭代器)。

随着插入元素数量增加,容器的size也随着增加。

由于map容器不允许键值重复,所以插入操作需要确保要插入的key值在map容器中没有。如果有的话,新的元素是不允许插入的,并且此键值的映射值是不会发生改变的。

如果想允许插入相同的元素,可以参考multimap。

本质上,map容器保持所有元素按照结构体指定的比较对象排序。

map容器允许直接的访问通过map::operator[]操作(对[]操作符进行了重载),即可以通过object[key]=value;这样操作。

参数

x

    初始化插入元素的值。

position

 确定插入操作时第一个相比较的元素。该参数并不是强制插入元素的位置。

first,last

指定元素区间的迭代器。拷贝[first,last)区间的元素,并且插入到map容器中。


返回值

第一个版本的insert返回一个pair类型,pair类型的成员pair:first设置一个迭代器指针,这个迭代器指针可能指向新插入的元素或者已经在map容器中存在的有着相同key值的元素;成员pair:second元素,如果新的元素插入,返回为true,或者当已经存在相同的key,返回false。

第二个版本返回一个指向新插入的元素或者已经在map容器中存在的有着相同key值的元素的迭代器指针。

迭代器是一个成员类型,被定义成双向迭代器类型。

举例1:

执行结果:

实例2:


执行结果:



友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: