当前位置: 首页 > news >正文

浅谈QMap中erase与remove的区别

QMap中erase与remove的区别

  • QMap中erase与remove的区别
    • 分别使用erase和remove删除元素
      • 使用erase删除元素
      • 使用remove删除元素
        • 代码讲解

QMap中erase与remove的区别

在实践中发现erase删除元素之后,其迭代器自动指向下一个元素,而remove删除元素之后迭代器不会自动指向下一个元素。

分别使用erase和remove删除元素

使用erase删除元素

删除示例可以看之前的记录。

使用remove删除元素

void filterLmSegSameBridgeStentDescrip(const QMap<int, QString> &MsgMap1,QMap<QString, QString> &mapMsg2)
{QMap<int, QString>::const_iterator it = MsgMap1.begin();for (; it != MsgMap1.end(); ++it){QMap<QString, QString>::iterator iter = mapMsg2.begin();for (; iter != mapMsg2.end();){if (iter.value() == it.value() && (it.key() == 1 || it.key() == 0)){mapMsg2.remove(iter.key());//删除后迭代器不会自动后移}++iter;}}
}

代码讲解

上述代码其功能是在mapMsg2中找与MsgMap1中相同的元素值(value()),从mapMsg2将相同的元素所在的键值对删除。

http://www.lryc.cn/news/90956.html

相关文章:

  • FastThreadLocal 原理解析
  • 设计模式B站学习(一)(java)
  • Pandas如何轻松按位置删除多重索引列?
  • 第五十七天学习记录:C语言进阶:结构体链表的自学
  • 【一次调频】考虑储能电池参与一次调频技术经济模型的容量配置方法(Matlab代码实现)
  • ICV报告: 智能座舱SoC全球市场规模预计2025年突破50亿美元
  • 在can协议的基础下编写DBC文件,然后使用该DBC文件下发can协议到底盘完整流程
  • 工业传感器有哪些?
  • Docker应用部署之Nginx
  • TerminalWorks TSPrint/TSScan/TSWebCam Crack
  • 如何使用Springboot实现文件上传和下载,并为其添加实时进度条的功能
  • 安装并新建windows下wxwroks7.0 bootrom工程
  • element-ui表格el-table的使用
  • Backtrader官方中文文档:第八章Indicators指标
  • CAP原则
  • 【PowerQuery】M语言的使用产品和使用场景
  • 【Linux】遇事不决,可先点灯,LED驱动的进化之路---1
  • hive任务reduce步骤卡在99%原因及解决
  • C++11 -- lambda表达式
  • 【开源项目】银行查询服务的设计和实现
  • Linux服务器禁止密码登录,设置秘钥登录
  • 第十八章 开发Productions - ObjectScript Productions - 通过引用或作为输出传递值
  • 【云原生|Kubernetes】07-Pod健康检查和服务可用性检查
  • jeecgboot使用的问题记录
  • 【C++】数组 - 一维数组,二维数组
  • 前端:使用rollup的简单记录
  • 基于flask的web应用开发——接受post请求
  • Linux源码包的安装与升级
  • 电子合同签署协议开源版系统开发
  • 【每日一题Day221】LC2455可被三整除的偶数的平均值 | 模拟