jna*_*eta 298 c++ static-analysis coding-style
Java有一些非常好的开源静态分析工具,如FindBugs,Checkstyle和PMD.这些工具易于使用,非常有用,可在多个操作系统上运行并且免费.
可以使用商业C++静态分析产品.虽然拥有这样的产品很棒,但是学生的成本太高,而且通常很难获得试用版.
另一种方法是找到可在多个平台(Windows和Unix)上运行的开源C++静态分析工具.通过使用开源工具,可以对其进行修改以满足特定需求.寻找工具并非易事.
下面是其他人发现或建议的C++静态分析工具的简短列表.
-Weffc++
GNU g ++ 选项(来自答案)什么是其他任何人都知道并可以推荐的便携式开源C++静态分析工具?
一些相关链接.
Soo*_*Tan 74
CppCheck是开源和跨平台的.
Mac OSX:
brew install cppcheck
Run Code Online (Sandbox Code Playgroud)
Nic*_*lli 53
关于GNU编译器,gcc已经有一个内置选项,可以为-Wall的那些启用额外的警告.选项是-Weffc ++,它是关于违反Scott Meyers在他的书" 有效和更有效的C++ "中发表的一些指导原则.
特别是该选项检测以下项目:
小智 21
Oink是一个建立在Elsa C++前端之上的工具.Mozilla的Pork是Elsa/Oink的一个分支.
请参阅:http://danielwilkerson.com/oink/index.html
Dav*_*one 16
其他人提到了-Weffc ++,但这实际上是我默认情况下没有打开的唯一GCC警告之一.但是,我打开的警告集是我的工具包中最重要的静态分析工具.您可以看到推荐警告的完整列表.
综上所述:
-pedantic -Wall -Wextra -Wcast-align -Wcast-qual -Wctor-dtor-privacy -Wdisabled-optimization -Wformat = 2 -Winit-self -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnoexcept -Wold -style-cast -Woverloaded-virtual -Wredundant-decls -Wshadow -Wsign-conversion -Wsign-promo -Wstrict-null-sentinel -Wstrict-overflow = 5 -Wswitch-default -Wundef -Werror -Wno-unused
请注意,其中一些需要新版本的gcc,因此如果您再次使用4.5或其他内容,则可能需要从列表中删除它们.
Luc*_*mon 14
John Carmack还在这篇关于"静态代码分析"的有趣博客文章中提到了PVS-Studio.
如果通过开源,你真的意味着"免费",那么微软的早期分析是一个很好的分析.Windows仅限课程.它完全集成在Visual Studio和编译器中.例如:
cl /analyze Sample.cpp
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
92145 次 |
最近记录: |