文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>[开发随笔]如何检测内存泄露

[开发随笔]如何检测内存泄露

时间:2010-08-26  来源:Jophoenix

在项目开发过程中,难免会出现内存泄露的情况,下面的方法可以帮助你快速找到哪里发生了内存泄露:

1. 在头文件中,添加如下代码:


#ifdef _DEBUG
#include <stdlib.h>
#include <crtdbg.h>
#endif


2. 在函数退出的地方,添加如下代码:

 

#ifdef _DEBUG
    _CrtDumpMemoryLeaks();
#endif

F5调试程序,将会输出如下类似信息:

{49} normal block at 0x00394F98, 8 bytes long.
 Data: <        > CD CD CD CD CD CD CD CD

3. 添加如下代码,将会在输出的信息中显示文件名及行号:


#define new new(_NORMAL_BLOCK, __FILE__, __LINE__)


dtest.cpp(13) : {49} normal block at 0x00394F98, 8 bytes long.
 Data: <        > CD CD CD CD CD CD CD CD
 

4. 如何没有显示文件名及行号,也可以在程序入口添加添加如下代码:

#ifdef _DEBUG // 检查是否有内存泄露
    _CrtSetBreakAlloc(49);
#endif 


 

相关阅读 更多 +
排行榜 更多 +
幸存者的命运

幸存者的命运

飞行射击 下载
精英战区3d

精英战区3d

飞行射击 下载
货运猎人

货运猎人

飞行射击 下载