[转]内存泄漏简单检测

工作环境:WIN7,VS2005:

最近一个项目中,程序退出后,每次都出现内存泄漏,每次退出的时候泄露的内存块都是1654,1650。

Detected memory leaks!
Dumping objects ->
{1654} normal block at 0x01CC1B28, 40 bytes long.
 Data:  54 00 69 00 63 00 6B 00 65 00 74 00 20 00 69 00 
{1650} normal block at 0x01CC1BF0, 16 bytes long.
 Data:  64 6B E8 95 68 79 0D 4E FD 80 7F 4F 28 75 00 00 
Object dump complete.

 

解决方法

1、在程序开始的地方,加上代码:_CrtSetBreakAlloc(1654); //1654为上面内存泄漏的块号。

2、用Debug模式运行,程序自动断点在“内存块1654”分配的位置。

3、这个时候一直利用“调试”-“退出”,或快捷键“SHIFT+F11”跳转,直到看到了自己的代码。

4、检查自己在该代码中分配的内存块,是否进行了合理的释放。

posted @ 2012-02-08 11:46  夜雨無聲  阅读(193)  评论(0编辑  收藏  举报