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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了静态代码分析器:非托管C ++ Visual Studio 2008相关的知识,希望对你有一定的参考价值。

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

有什么建议?

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

我在考虑PC-Lint + Visual Lint

但是,我一直在密切关注CoverityUnderstandKlockwork

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

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

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

答案

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

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

另一答案

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

另一答案

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

另一答案

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

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

另一答案

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

它还有许多其他功能:

  1. 验证几天前最近修改过的文件;
  2. 通过文本文件列表中的文件名验证文件;
  3. 版本控制系统集成;能够从命令行界面进行操作;
  4. «假警报»标记;保存和加载分析结果;
  5. 利用所有可用的核心和处理器;
  6. 等等...

以上是关于静态代码分析器:非托管C ++ Visual Studio 2008的主要内容,如果未能解决你的问题,请参考以下文章

Visual Studio 2008 Profiler 是不是适用于非托管 C++?

在Visual Studio 2010中将Native / C ++ DLL链接到托管C ++ / CLI包装器

如何在Visual C ++中创建非托管Windows GUI?

托管代码中未声明的标识符错误...Visual C#

如何从我的 Visual Studio 静态代码分析中排除库头?

将 DataTable 传递给非托管环境(visual c# 2005)