在std::map中插入时的位置
Position when inserting in std::map
我有一个方法,它在std::map中插入一对。地图类似于(0,value0)、(3,value3)、(8,value8)。。。所以当我插入时,我需要指定整数值。我的问题是,如果我有:(0,value0),(3,value3)并且我要插入值3与值5相同的(5,value5)-不能插入对(5,value 5)。我如何检查元素应该去的位置的前一个位置是否有相同的值?到目前为止,我已经尝试插入对,获取迭代器,检查以前的值,并在需要时删除插入的值。但我觉得这个解决方案有点难看。有什么想法吗?提前感谢
Map的lower_bound
函数将向位置大于或等于给定位置的第一个元素返回迭代器;然后你就可以回去了。(小心,以防你已经开始了。)
http://en.cppreference.com/w/cpp/container/map/lower_bound
相关文章:
- 将一个向量插入另一个向量的某个位置
- 如何通过保持第一个插入的位置来对列表中插入的其余元素进行排序?
- 如何在另一个字符串的x位置插入一个字符串?
- 将多个值插入到特定位置的矢量中
- 使用unique_ptr插入单个链表的位置
- 插入到双向链表中的特定位置
- 如何在向量中保存位置以供以后插入?
- 创建一个函数以在给定位置将元素插入到列表中
- 有没有办法在unordered_map的某个位置插入元素
- C 从特定位置插入其他向量中的载体
- 如何处理更改插入符号位置的事件
- 有没有一种方法可以在std::向量的特定位置重复插入元素
- 在链表中的第 n 个位置插入节点
- 如何将向量插入2D矢量的定义位置
- 使用 C++ 在单向链表的指定位置插入节点时出现分段错误
- 在文件中的任意位置插入动态大小对象
- 通过指定第 n 个节点位置在单链接列表中插入数据
- 在Embarcadero Tools API中的光标位置插入文本
- 在链接列表C 中的某个位置插入节点
- 字符串流的不同插入位置