简介
cpplint 是google使用python脚本实现的用于检查C++代码风格的工具。
限制
限于检查google编码风格的cpp文件的检查。
安装
安装完python后,在命令行下运行:
pip install cpplint
使用
- 在python shell中导入cpplint模块
import cpplint
- 可通过help命令查看所有的cpplint的方法
help(cpplint)
- 语法
Syntax: cpplint.py [–verbose=#] [–output=emacs|eclipse|vs7|junit]
[–filter=-x,+y,…]
[–counting=total|toplevel|detailed] [–repository=path]
[–root=subdir] [–linelength=digits] [–recursive]
[–exclude=path]
[–headers=ext1,ext2]
[–extensions=hpp,cpp,…]
[file] … - 使用举例
python C:\Python27\Lib\site-packages\cpplint.py you\path\to\tobecheck.cpp - 备注
规则过滤,可以从现有规则中决定使用哪些规则来check代码
filter=-x,+y,…
Specify a comma-separated list of category-filters to apply: only
error messages whose category names pass the filters will be printed.
(Category names are printed with the message and look like
“[whitespace/indent]”.) Filters are evaluated left to right.
“-FOO” and “FOO” means “do not print categories that start with FOO”.
“+FOO” means “do print categories that start with FOO”.
cppcheck
简介
cppcheck 是一个静态代码检查工具,支持c, c++ 代码;作为编译器的一种补充检查,cppcheck对产品的源代码执行严格的逻辑检查。 执行的检查包括:
1. 自动变量检查
2. 数组的边界检查
3. class类检查
4. 过期的函数,废弃函数调用检查
5. 异常内存使用,释放检查
6. 内存泄漏检查,主要是通过内存引用指针
7. 操作系统资源释放检查,中断,文件描述符等
8. 异常STL 函数使用检查
9. 代码格式错误,以及性能因素检查
安装
从http://cppcheck.net/下载并安装msi文件,默认安装到C:\Program Files\Cppcheck
- 将C:\Program Files\Cppcheck添加path环境变量,便于以后的使用。
- 在vs1020中做如下设置,即可在vs的输出窗口中看到cppcheck的检查结果,当然可以随时修改cppcheck的级别
为了测试,特意写了一个内存泄漏的代码