c++中 有没有比较好用的内存泄露检测的class?

u010627130 2013-05-09 09:41:14
c++中 有没有比较好用的内存泄露检测的class?

IBM看到有几个工具,但是不太靠谱 还要注册

看到网上有很多,有没有人自己封装过的?
...全文
305 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
gjw198276 2013-11-27
  • 打赏
  • 举报
回复
引用 7 楼 starytx 的回复:
return 0;前加上这句 _CrtDumpMemoryLeaks(); // 内存泄露检测
不是只要加上这句,在output里面本来就会显示内存泄露的信息吗?那个工具好像只是把这个信息捕获到了工具里面吧?有点不明白用这个工具的意义在哪儿?
starytx 2013-05-09
  • 打赏
  • 举报
回复
提醒一下:你的执行代码最好放在一个大括号里,然后在括号外放那句,否则如果你有个类中动态开辟空间了,在析构中会自动释放,那么如果你代码没放在大括号里,那句检测语句可能会报内训泄露,因为此时你的类还没有析构
u010627130 2013-05-09
  • 打赏
  • 举报
回复
引用 7 楼 starytx 的回复:
return 0;前加上这句 _CrtDumpMemoryLeaks(); // 内存泄露检测
好 终于有信息了,谢啦 Ok
starytx 2013-05-09
  • 打赏
  • 举报
回复
return 0;前加上这句 _CrtDumpMemoryLeaks(); // 内存泄露检测
u010627130 2013-05-09
  • 打赏
  • 举报
回复
引用 5 楼 starytx 的回复:
[quote=引用 4 楼 u010627130 的回复:]
[quote=引用 2 楼 starytx 的回复:]
附下载地址:http://download.csdn.net/detail/wjh173069597/3269063
也可在资源中搜索“debugview”

有没有不要工具的,直接是class的,在我的项目中可以使用的?[/quote]为什么非要是类?这个工具你只要开着,然后关闭你的程序就可以看有没有泄露啊[/quote]
这个也不对啊,我的程序是这样的:

#include <iostream>
#include "string"
#include "vector"
using namespace std;

int main()
{
char *str;
str = new char[100 + 1];

strcpy(str, "zengraoli");

cout << str << endl;

return 0;
}


但这玩意没反应呢

starytx 2013-05-09
  • 打赏
  • 举报
回复
引用 4 楼 u010627130 的回复:
[quote=引用 2 楼 starytx 的回复:] 附下载地址:http://download.csdn.net/detail/wjh173069597/3269063 也可在资源中搜索“debugview”
有没有不要工具的,直接是class的,在我的项目中可以使用的?[/quote]为什么非要是类?这个工具你只要开着,然后关闭你的程序就可以看有没有泄露啊
u010627130 2013-05-09
  • 打赏
  • 举报
回复
引用 2 楼 starytx 的回复:
附下载地址:http://download.csdn.net/detail/wjh173069597/3269063 也可在资源中搜索“debugview”
有没有不要工具的,直接是class的,在我的项目中可以使用的?
  • 打赏
  • 举报
回复
楼上+1 VS 带了一个内存泄漏检测的宏,结果会跟1楼回复的差不多
starytx 2013-05-09
  • 打赏
  • 举报
回复
附下载地址:http://download.csdn.net/detail/wjh173069597/3269063 也可在资源中搜索“debugview”
starytx 2013-05-09
  • 打赏
  • 举报
回复
可以使用DebugView工具来查看,如果程序退出时有泄漏,会显示内存泄露信息,显示信息示例 00000000 0.00000000 [6300] Detected memory leaks! 00000001 0.00003771 [6300] Dumping objects -> 00000002 0.00007822 [6300] {185} 00000003 0.00010923 [6300] normal block at 0x003F8F50, 10 bytes long. 00000004 0.00014806 [6300] Data: < > CD CD CD CD CD CD CD CD CD CD 00000005 0.00017879 [6300] Object dump complete.

64,723

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧