内存泄漏:afxwin2.inl 错误

今天在调试代码中发现一个问题,就是基于对话框的一个demo,在录制完一段码流,并且将详细信息显示在edit中,当结束录制的时候,直接点击退出(onok),然后就会报告内存泄漏:

Detected memory leaks!
Dumping objects ->
strcore.cpp(118) : {124} normal block at 0x004327E0, 38 bytes long.
 Data: <              1 > 02 00 00 00 19 00 00 00 19 00 00 00 B5 DA 31 B8
strcore.cpp(118) : {122} normal block at 0x00432890, 52 bytes long.
 Data: <        '       > 01 00 00 00 08 00 00 00 27 00 00 00 C8 CE CE F1
Object dump complete.

初始以为是CString的问题,但经过检查在代码中凡是调用str.GetBuffer(0)的地方,都调用了相应的str.RealeaseBuffer()。在代码的多个线程中也没有调用new char[],排除CString的问题。怀疑是多个线程在

退出的时候,有的变量没有释放,但是每个线程中对应的new都有delete。

关键的关键是这个内存错误在调试状态下,总是一闪而逝,让我想不明白,我在认为可能出现bug的地方都

加了断点,没辙了,想到了最老土的方法,用print screen来捕捉这个错误,还好天无绝人之路ÿ

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这个错误是由于在您的代码中包含了一个名为"afxwin.h"的头文件,但编译器无法找到它所在的位置导致的。"afxwin.h"是一个与MFC(Microsoft Foundation Classes)相关的头文件。 解决此错误的方法取决于您的项目类型和使用的开发环境。以下是几种可能的解决方法: 1. 确保MFC已正确安装:如果您使用的是Visual Studio进行C++开发,并且项目使用了MFC,请确保已正确安装MFC组件。您可以在Visual Studio的安装程序中选择或添加MFC组件。 2. 更新项目属性:如果您的项目是使用Visual Studio创建的MFC应用程序,请打开项目属性,导航到"配置属性" > "常规",然后确保"使用MFC"选项设置为"使用MFC静态库"或"使用MFC共享DLL",具体取决于您的需求。 3. 检查头文件路径:确认您的代码中包含了正确的头文件路径。检查stdafx.h文件中是否有#include语句,并确保路径指向正确的位置。如果路径不正确,可以根据您实际的文件结构进行调整。 4. 导入正确的库文件:如果您没有使用MFC,但仍然包含了"afxwin.h"头文件,可能是因为代码中包含了不必要的或错误的库文件。检查代码中是否有其他地方引用了该头文件,如果没有必要,请删除相应的#include语句。 希望以上解决方法能够帮助您解决C1083错误。如果问题仍然存在,建议您提供更多关于您的项目类型、开发环境和代码的详细信息,以便更好地帮助您解决问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值