3
我有应用程序,我编译与VS 2008在Windows 7与c + + 而我得到了异常,我试图抓住这个我创建的pdb文件(因为我编译在发布)。并看到部分堆栈,但它并没有给我提示错误的位置。 我正在寻找免费的方式来获得这个错误。你可以建议自由的方式来做到这一点?如何配置文件和捕获C++的双重删除和内存损坏
我有应用程序,我编译与VS 2008在Windows 7与c + + 而我得到了异常,我试图抓住这个我创建的pdb文件(因为我编译在发布)。并看到部分堆栈,但它并没有给我提示错误的位置。 我正在寻找免费的方式来获得这个错误。你可以建议自由的方式来做到这一点?如何配置文件和捕获C++的双重删除和内存损坏
的Visual C++内置了相当不错的C运行时内存调试工具
见#define _CRTDBG_MAP_ALLOC
,或阅读:The CRT Debug Heap和Memory Leak Detection Enabling。
它可以检测:
的结束。如果你有一个可重复的情况下,问题的分配总是在那里发生在同一时间,您可以使用它将其分配到调试器中。
还有一些商业工具,如BoundsChecker,HeapAgent和Purify,以及像Fortify这样的免费工具,当然你也可以推出你自己的工具,但是你可以用内置的VisualStudio来实现。
curtis。你可能有链接到Fortify下载?提前致谢。 – ossandcad 2010-05-13 00:00:49
我可以在发布模式下测试它吗? co'z它在哪里是我的问题 在调试它工作正常 – user63898 2010-05-13 06:38:22
@ossandcad:它看起来像它最后的安息之地是Geocities。我在这里找到了一个副本:http://www.gnu-darwin.org/www001/src/ports/devel/adime/work/adime-2.2.1/include/fortify.h - IIRC 2.2是最新版本。 – 2010-05-13 10:43:12