为什么c++中用map中insert的返回的iterator使用报错

为什么c++中用map中insert的返回的iterator使用报错,第1张

一些细指尘节错扮卖误,可能没注意吧:

if (!pcheck.second)

pcheck.first->唯缺禅second++

pcheck = cmap.insert(p2)

if (!pcheck.second)

pcheck.first->second++

呵呵,翻译作品确实往往比较生硬。

map容器与前面讲过的顺序容器(vector、deque、list)一样都有insert成员函数,而且作用也都是向容器中插入新元素

但有一点要注意:map中的数郑扒据是按照键(key)值排序的,键决定了一个元素在容器中的位置,因此insert函数的实参不需要再像顺序容器那样用一个迭代器作为实参来指定插入位置了,实参只需要指定要喊早昌插入的元素。

map容器中的每个元素都是由键(key)和值(value)两部分组成的一个pair。map的insert函数有两个版本:插入一个元素和插入一组元素。插入一个元素的版本的insert的参数是pair类型的,插入一组元素的版本的insert的参数是一对迭代器,分别指向要插入的那一组pair的开始和睁肢结束位置。

cout<<"删除关键字为" 范伟 "罩好的所有元素。\n"

改为

cout<<"删除关键字为\" 范伟 \"的所有元素。\n"

在解决方案窗口中对项目名鼠弯并标右击,选择属性,字符集选择多字节字符集 ,vs2010默认是用unicode字符埋闷迹集的


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12558715.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存