您用于C ++应用程序的动态审查/内存分析的最佳工具(商业/开源)是什么?
编辑:删除'静态',因为此主题已经有great question(感谢Iulian!)
答案 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)
答案 4 :(得分:0)
对于统计分析,已经有答案here。
答案 5 :(得分:0)
对于静态代码审查,KLOCWORKS很好。
对于内存分析,内存泄漏识别,devpartner是一个非常好的。
答案 6 :(得分:0)
Microsoft FxCop进行静态分析(免费)。 Parasoft Insure($$$$)或IBM Purify($$)用于动态内存分析。