本文只是记录自己容易忽视的地方,良好的代码风格有助于公司提高统一开发效率。推荐书籍《clean code》,可以去网上找一下大公司的编程规范手册。
标识符命名风格
单个标识符命名风格:
- 驼峰命名法:每个单词第一个字母大写,其余小写 VariableName
- 内核:所有字母小写,用下划线连接:variable_name
- 匈牙利命名法(不要使用)
- 全大写加下划线:所有字母大写,用下划线连接:VARIABLE_NAME
一般只用于常量和宏的命名
一般变量采用小驼峰命名法,函数使用大驼峰命名,宏定义使用全大写加下划线
代码格式
缩进一般采用四个空格,关键字用空格突出,如if,for等。逗号,分号后面要跟空格。除了函数外,大括号跟随条件之后。函数需要另起一行。
for (int i = 0; i < 0; i++) {
printf(%d", i);
}
int main()
{
return 0;
}
代码度量
函数行数(建议不超过50行)
文件行数(建议不超过500行)
函数圈复杂度(建议不超过10)
函数内缩进嵌套层次(建议不超过4层)
架构度量(上帝类,模块耦合程度)
应用工具定期检查度量数据,可以辅助发现代码中的可优化点。Google要求超过40行的函数就应当审视其合理性
业界指南、规范和工具
Google c++ style guide
http://google.github.io/styleguide/cppguide.html
SEI CERT C++ Coding Standard
https://wiki.sei.cmu.edu/confluence/pages/viewpages/viewpage.action?pageld=88046682
C++ Core Guidelines
http://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines
由c++ 之父牵头,重点为如何合理应用现代c++用法代码
静态检查工具
编译器告警:gcc、msvc、clang
辅助检查工具:PC-lint plus、Cppcheck、华为云代码检查:https//www.huaweicloud.com/product/codecheck.html