C ++动态审查工具

时间:2010-06-23 10:34:12

标签: c++ visual-c++ memory-management static-analysis

您用于C ++应用程序的动态审查/内存分析的最佳工具(商业/开源)是什么?

编辑:删除'静态',因为此主题已经有great question(感谢Iulian!)

7 个答案:

答案 0 :(得分:7)

对于动态内存分析肯定是Valgrind

答案 1 :(得分:1)

CPPCheck现在已经很好地服务了我一段时间。这是用于统计分析。

答案 2 :(得分:1)

Ryan,如果您使用的是Windows并使用MSVC ++,那么我可以在Micro Focus的DevPartner VC ++版本中推荐BoundsChecker。它的内存跟踪分析中有一个称为内存资源查看器的功能。您可以使用它来标记某个时间点,然后从该点开始查找分配。这加上传统的堆损坏和其他内存检查应该可以帮助您动态跟踪C ++堆和堆栈问题。无耻的插件:我在DevPartner团队工作。在BoundsChecker中寻找支持64位的DPS 10.5,于2011年2月4日在http://www.DevPartner.com启动。

答案 3 :(得分:0)

Linux上的

Valgrind

Windows上的

Duma

答案 4 :(得分:0)

对于统计分析,已经有答案here

答案 5 :(得分:0)

对于静态代码审查,KLOCWORKS很好。

对于内存分析,内存泄漏识别,devpartner是一个非常好的。

答案 6 :(得分:0)

Microsoft FxCop进行静态分析(免费)。 Parasoft Insure($$$$)或IBM Purify($$)用于动态内存分析。