静态代码分析器:非托管C ++ Visual Studio 2008

时间:2009-04-11 05:52:32

标签: c++ visual-studio visual-c++ static-analysis

我在Visual Studio 2008上开发商业非托管C ++应用程序,我想添加一个静态代码分析工具。

有什么建议吗?

我认为如果该工具可以集成到MSVC中,那将是非常好的。

我正在考虑PC-Lint + Visual Lint

但是,我一直在认真考虑CoverityUnderstandKlockwork

价格不是真正的问题。我希望那些在MSVC上实际使用该工具用于非托管C ++ 的人的意见,他们非常喜欢它。

最后,VSTS和Intel Parallel Studio现在也提供静态代码分析。尼斯〜

注意:相关post建议Coverity是最好的(?)(参见最后2篇帖子)

5 个答案:

答案 0 :(得分:3)

除了你提到的所有内容之外,VS Team Developer版附带了一个名为prefast的静态分析工具。它(很明显......)很好地集成到IDE中,可通过菜单访问。 它实际上是一个MS内部工具的公开发布 - 一个名为Prefix的工具的精简版,它们在它们的构建上运行。就个人而言,当我面临同样的决定时,早先就足够了。

答案 1 :(得分:2)

我刚刚开始使用cppcheck因为低噪音而非常喜欢。

虽然它没有直接与Visual Studio 2008集成,但VS可以自定义,您应该能够将它直接集成到IDE中。

答案 2 :(得分:2)

我为RedLizard构建Goanna,这是一个用于Visual Studio的C ++静态分析插件。它的重点是程序员使用桌面。您可以在单个文件上运行它,就像编译器一样,它可以快速为您提供结果。

有一个trial available。右键单击文件,选择运行Goanna ,结果将显示在Visual Studio警告列表中。

答案 3 :(得分:2)

您可以尝试CppDepend,一个非常完整的c和c ++静态分析器,与VS 2008,2010,2012,2013和2015完美集成。

答案 4 :(得分:0)

我使用PVS-Studio static code analyzer。 这个静态代码分析器很好地与Visual Studio 2005,2008,2010,2012,2013集成。

它有许多其他功能:

  1. 验证几天前最近修改过的文件;

  2. 通过文本文件中的文件名验证文件     列表;

  3. 版本控制系统集成;从命令行操作的能力     接口;

  4. «虚假警报»标记;保存和加载分析     结果

  5. 利用所有可用的核心和处理器;

  6. 等...