cppcheck有无平替?

在代码开发中不可能做到没有任何漏洞,尤其是对于初学者来说,出现冗余变量、冗余赋值的情况是很常见的。
前提:接触到一款插件cppcheck。
发现:在运行插件后会给出静态问题。比如冗余变量赋值、给map中用emplace插入记录前遍历是否已有记录是冗余的之类的报错。
问题1:cppcheck有没有同类替代产品?
问题2:cppcheck给出的所有建议都是值得修改的吗?
问题3:cppcheck有没有其他奇妙的用途?

该回答引用GPTᴼᴾᴱᴺᴬᴵ
问题1:cppcheck有没有同类替代产品?
答:是的,静态代码分析工具有很多,例如Clang Static Analyzer、PVS-Studio、Coverity Scan等等,它们都能够进行静态代码分析并给出相应的警告和错误信息。
·
问题2:cppcheck给出的所有建议都是值得修改的吗?
答:不一定。有些建议可能是false positive(假阳性),也就是并不是真正的错误,而是代码结构、语法等方面的问题。需要开发者结合具体情况进行判断,不一定全部需要修改。
·
问题3:cppcheck有没有其他奇妙的用途?
答:cppcheck可以通过命令行工具来使用,也可以与持续集成工具(例如Jenkins、Travis CI等)结合使用,实现代码提交时自动进行静态代码分析,并在出现问题时进行提示和报警。另外,cppcheck还支持多种输出格式,例如XML、JSON等,可以方便地进行二次开发和集成。

  • 你可以参考下这篇文章:Cppcheck配置及使用
  • 除此之外, 这篇博客: Cppcheck代码扫描工具介绍中的 中设置cppcheck 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 重启ccs后,按下图操作:

    左下角显示高级设置后,选择c/c++->cppcheclipse。

    将cppcheck的安装目录填入即可。

           注:可选择settting对check的规则进行设置,初次使用建议使用默认设置即可。