锐英源软件
第一信赖

精通

英语

开源

擅长

开发

培训

胸怀四海 

第一信赖

当前位置:锐英源 / 开源技术 / C++开源社区 / map/set iterators incompatible

服务方向

人工智能数据处理
人工智能培训
kaldi数据准备
小语种语音识别
语音识别标注
语音识别系统
语音识别转文字
kaldi开发技术服务
软件开发
运动控制卡上位机
机械加工软件
软件开发培训
Java 安卓移动开发
VC++
C#软件
汇编和破解
驱动开发

联系方式

固话:0371-63888850
手机:138-0381-0136
Q Q:396806883
微信:ryysoft

锐英源精品原创,禁止转载和任何形式的非法内容使用,违者必究。点名“简易百科”和“闲暇巴”盗用锐英源原创内容。


map/set iterators incompatible

在调试一个有非常复杂数据结构的软件时,遇到:map/set iterators incompatible错误,具体代码行是。

it->second使用

复杂在map是多层的,不是单层map,里面循环也是多层的,数据量也有上G,占用内存多。

这个it肯定有初始化,初始化后执行了循环后出现错误map/set iterators incompatible。

我把数据环境初始化了一下,再执行软件,没再报错。

有可能是map的键结构在操作时被修改了,再使用遍历指针就出这样的错。

C++新出的智能指针让内存管理更方便了,但是还是不放心。内存管理上C语言原始吧,不涉及到面向对象,只要用好内存池问题不大,但是C++结合STL的内存管理很麻烦,又不像C#或java有虚拟机平台进行整体底层管理,所以用C++开发,有时候就要会避开陷阱,代码逻辑要清晰,模块边界要规整。

锐英源软件有这方面的大量例子,有兴趣学好C++掌握C++请找锐英源软件。

友情链接
版权所有 Copyright(c)2004-2021 锐英源软件
公司注册号:410105000449586 豫ICP备08007559号 最佳分辨率 1024*768
地址:郑州大学北校区院(文化路97号院)内