C++ Bug调试
文章平均质量分 95
爱煮小米粥
这个作者很懒,什么都没留下…
展开
-
Linux下C++内存泄露的检查方法
简要介绍了程序内存的区域分布,产生内存泄露的原因,避免的方法以及内存泄露的常用检测工具原创 2022-10-07 12:28:46 · 3104 阅读 · 1 评论 -
OpenCV中 cv::Mat数据类型汇总以及多维矩阵元素访问(C++)
cv::Mat在SLAM经常用于存储图像数据以及相机位姿,其兼容的数据类型多种多样,使用此数据结构前要明确搞清楚当前矩阵元素是什么类型的,不然后面进行逐个元素访问或者计算时会经常出错。1、数据类型查看方法:cv::Mat T;std::cout<<T.type()<<endl;2、type()返回值与数据类型对应关系:type()返回值C1CV_8U2CV_8S...原创 2020-11-25 21:32:22 · 4191 阅读 · 1 评论 -
C++ warning: Clock skew detected. Your build may be incomplete
问题陈述:本人电脑上安装的是Win10+Ubuntu16.04双系统,从Win10切换到Ubuntu时,电脑没有联网的话系统时间时间可能会发生错乱,此时若对C++工程进行编译的话,工程里的部分文件时间将全部被改为当前错误的系统时间。当下次进入Ubuntu时若系统联网的话,系统时间将会自动校准为当前真实时间,而C++工程的文件时间还是错误的,此时若去编译这个工程,将会出现标题所述警告,导致系统无法正确编译。问题原因:系统时间与C++工程的文件时间不一致。解决办法:更新所有文件的时间后重新编译。cd原创 2020-11-09 15:19:27 · 200 阅读 · 0 评论 -
Error in `./rgbd_tum‘: double free or corruption (!prev): 0x00007f3b385d0a40错误解决
C++程序运行过程中遇到了下列错误:Error in `./rgbd_tum’: double free or corruption (!prev): 0x00007f3b385d0a40,且错误出现的时间点随机,如下图所示:上网查了资料,有人说是内存访问越界了,但是仔细检查程序之后没有此情况,经过反复思考,才发现是线程间共享资源访问冲突了,下面介绍一下问题以及解决办法:程序的结构如下:MapObject.h:public: std::vector<VoxelNode *> GetA原创 2020-08-16 16:14:20 · 1857 阅读 · 0 评论