QT调试技巧-使用静态代码检测工具Cppcheck检测代码

QT调试技巧-使用静态代码检测工具Cppcheck检测代码


如需转载请标明出处:http://blog.csdn.net/itas109
QQ技术交流群:129518033

环境:
Qt Creator版本:4.0.3
Qt版本:5.6.2
Cppcheck版本:1.8.2
http://cppcheck.sourceforge.net/
Qt Creator Cppcheck Integration版本:4.0.0(必须与Qt Creator版本一致)
https://github.com/OneMoreGres/qtc-cppcheck/releases/tag/4.0.0
操作系统:windows 7 64bit


1.Cppcheck的安装

a.Cppcheck简介

Cppcheck是一个C/C++代码的静态分析工具。与C++编译器和其他许多分析工具不同,Cppcheck不检测代码中的语法错误,只检测那些编译器通常无法检测到的bug类型,目的是只检测代码中真正的错误。

特点:

  • 检查边界溢出
  • 检查内存泄漏
  • 检查可能的空指针间接引用
  • 检查未初始化的变量
  • 检查无效的STL使用
  • 检查异常安全
  • 警告如果过时的或者不安全的函数使用
  • 警告未使用的或者冗余的代码
  • 检测各种潜在bugs的可疑代码等

所有检查项可以查看这理:https://sourceforge.net/p/cppcheck/wiki/ListOfChecks/

CppCheck可以扩展,你可以:

查找简单模式,查看手册中章节rules;
使用.cfg文件为函数定义规则,查看手册中章节library;
使用脚本扩展cppcheck,查看手册中章节addons。

b.下载Cppcheck

下载地址:
http://cppcheck.sourceforge.net/
版本:Windows 32-bit (No XP support) 1.8.2

c.安装

运行cppcheck-1.82-x86-Setup.msi直接进行安装

2.QT插件安装

a.简介

由于我们实际开发环境是QT,所以安装QT的cppcheck插件。

插件名称:Qt Creator Cppcheck Integration

作用:将一些Cppcheck功能集成到Qt Creator IDE中。

特点:

  • 构建后自动检查活动项目
  • 保存时自动检查活动项目的文件
  • 手动检查任何项目的文件
  • 在任务平移中显示找到的错误(在编辑器中带有标记)
  • 大多数设置都是可配置的
  • 支持翻译

b.下载

下载地址:https://github.com/OneMoreGres/qtc-cppcheck/releases/tag/4.0.0

注意:
Qt Creator Cppcheck Integration版本必须与Qt Creator版本一致,否则不能正常运行。

c.安装

1)复制到QT插件目录

1.从归档文件中提取/复制文件到Qt Creator的目录(归档文件已经包含正确的路径)。

  • 找到QtCreator安装目录
  • 将lib/qtcreator/plugins/libQtcCppcheck.so复制到QC_DIR的lib/qtcreator/plugins。例如,D:\Qt\Qt5.6.2\Tools\QtCreator\lib\qtcreator\plugins
  • 将share/qtcreator/translations/QtcCppcheck_ru.qm复制到QC_DIR的share/qtcreator/translations/。例如,D:\Qt\Qt5.6.2\Tools\QtCreator\share\qtcreator\translations

2.在帮助 - >关于插件菜单中启用插件。

这里写图片描述
这里写图片描述

3.重启QtCreator

4.配置cppcheck路径

这里写图片描述
这里写图片描述

至此,QT的cppcheck插件安装完成

3.cppcheck的QT插件的使用

a.工具中选择使用

这里写图片描述

b.右键工程或文件使用

这里写图片描述
这里写图片描述

4.结果

这里写图片描述


Reference:
https://github.com/OneMoreGres/qtc-cppcheck
https://gres.biz/qtc-cppcheck/
http://hao.jobbole.com/cppcheck/


觉得文章对你有帮助,可以用微信扫描二维码捐赠给博主,谢谢!
微信
如需转载请标明出处:http://blog.csdn.net/itas109
QQ技术交流群:129518033

猜你喜欢

转载自blog.csdn.net/itas109/article/details/79400166