语句
类型
只针对一个文件的局部类型一般在相应文件内部声明。
类必须按照public,protected和private的顺序分几部分。每部分必须被显式的标识。没有用到的部分应该预留。
类型转换必须显式进行。不要依赖隐式的类型转换。
变量
- 变量应该在它们声明的地方初始化。
变量不要有双重含义。
应该尽量少使用全局变量。
类的变量应该不要声明为public。
- 同一类型的相关的变量一般在一条语句中声明。
- C++ 指针和引用的符号应该靠近变量名而非类型名。
- const 关键字应该在类型名之前。
- 布尔型变量和指针之外,应该不用隐式的0值测试。
- 变量应该在尽可能小的范围内声明。
循环
必须只有控制循环的语句包含在for()的构造中。
循环变量应该在循环体前被初始化。
- 一般避免do-while循环。
- 在循环内应该避免使用break和continue。
- 应该使用while(true)表示无限循环
条件
必须避免非常复杂的条件表达式。通过引入临时的布尔变量代替。
对于if语句,正常的分支应该放在if部分,异常部分放在else部分。
条件应该放在单独的一行。
必须避免在条件部分包含执行语句。
杂项
应该在代码中避免出现神秘的数。除0和1以外的任何数均为神秘数,应该用命名常量代替。
建议通过方法来访问常量。
函数必须总是显式列出返回值。
检查函数所有参数输入的有效性;并对所调用函数的错误返回码要仔细、全面地处理。
应该不用goto。
在不包含注释和空行的情况下,函数的规模尽量限制在200行以内。
减少函数本身或函数间的递归调用;
应该用”0”替代”NULL”。