我的代码规范:
-
头文件
一个.cpp文件一般包含一个.h文件 ,但是一些测试代码偶尔也只有.cpp文件。
所有的头文件都有#define 做条件编译防止重复包含。
不包含不必要的头文件,尽量减少前置声明。
都文件包含顺序:- C语言系统调用
- C语言库函数
- C++库函数
- C++第三方库
- 自己项目的.h文件
-
作用域
在变量定义时初始化
不同的大功能模块使用namespace制定作用域
尽量不适用内嵌类 -
类
类名采用单词首字母大写的驼峰命名法
10行以上代码不适用inline函数
如果类内部的方法很多在类外定义函数的实现
有必要时尽量加上const explicit 等关键字修饰
类的成员变量命名使用下划线开头
先申明共有变量 再声明保护变量 最后声明私有变量
析构函数声明为虚函数
构造函数重载多种种类 -
函数
函数的重要参数写在前面,次要参数写在后面
const & 作为输入型参数
const * 作为输出型参数
& 作为输入输出型参数
函数参数后紧跟逗号,逗号后空一格写下一个参数 -
括号与缩进
所有{ } 均另起一行上下对齐
缩进均为4个字符 -
其他
有必要的话尽量使用智能指针
尽量不适用缺醒参数
在一个作用域内可以不重复申请空间的变量定义在更高层的作用域中
枚举\宏使用大写字母命名
宏函数用 do{}while(0)语句括起来