Visual Leak Detector是一款免费的检查内存泄露的工具。最新的2.1版本可以很好的支持VS2008/2010。
点击这里下载
安装后,在VS中设置Tool->Options 选择Projects and Solutions中的VC++ Directories,将Visual Leak Detector安装路径中的include和lib路径设置Include Files和Library Files中,如有必要可以将安装路径下bin里的相应dll拷贝至System32下。
创建一个简单的工程,其中指针b所指向的内存没有被正确地释放。
- void leak()
- {
- int *b = new int[10];
- for (int i = 0; i < 10; ++i)
- {
- b[i] = i;
- }
- }
- int main()
- {
- leak();
- return 0;
- }
include<vld.h>,运行就能在output窗口看到效果啦。

输出的部分主要分为两块
Call Stack部分:
是泄露内存的调用堆栈,其中显示了泄露资源创建的位置,双击便可以定位到相应的代码部分。
Data部分:
即使泄露部分的内存内容。
注:在自己机器上VS2008上,用了下1.0和1.9b的版本,都出现了不同的问题(1.0版本不能定位泄露代码,1.9b没有正确检查出泄露)。2.1版本运行一切正常。
本文介绍了VisualLeakDetector 2.1版本的安装配置步骤,并通过一个示例展示了如何使用该工具检测C++程序中的内存泄漏。文章还对比了不同版本间的差异。
1万+

被折叠的 条评论
为什么被折叠?



