C/C++程序越复杂,内存管理就越重要,一不小心就会发生泄漏。如果内存泄漏不是很严重的话,短时间内不会对程序造成太大的影响,这也使得内存泄漏问题非常隐蔽,很难被发现。然而,无论内存泄漏多么轻微,当一个程序长时间运行时,其破坏力是惊人的——从性能下降到内存耗尽,甚至影响其他程序的正常运行。一、VLD简介VLD(全称:VisualLeakDetector)是一款免费的VisualC++内存泄漏检测工具。与其他内存检测工具相比,它在检测内存泄漏时还有以下特点:可以得到内存泄漏点的调用栈,以及它的文件和行号;您可以获得泄漏内存的完整数据;您可以设置内存泄漏报告级别;提供打包好的lib库,无需编译源码,直接使用;源代码在GNU许可证下发布,并有详细的文档和注释。对于想深入了解堆内存管理的读者来说是一个不错的选择。VLD使用方便,只需要添加库和include头文件,然后正常运行自己的程序,就能发现内存问题;如果深入源码,可以了解到堆内存分配和释放的原理、内存泄漏检测的原理、内存操作的常用技巧等。2、下载并安装VLD主页:https://kinddragon.github.io/vld/文档地址:https://github.com/KindDragon/vld/wikiGitHub地址:https://github.com/KindDragon/vld进入首页后,点击右上角“下载安装程序”按钮,下载VLD安装程序(当前版本:vld-xxx-setup.exe):下载完成后,进行傻瓜式安装(nextstep...nextstep)安装后的目录如下:其中,每个目录及其内容为:bin:包含运行时的库文件——dbghelp.dll、vld_x64.dllinclude:包含头文件用于编译的文件-vld.H。vld_def.hlib:包含用于编译的库文件-vld.lib3。如何使用创建一个新的C++控制台程序:#include
