google规范c++笔记

原文地址:https://zh-google-styleguide.readthedocs.io/en/latest/contents/

一、头文件

 

1.您所依赖的符号 (symbols) 被哪些头文件所定义,您就应该包含(include)哪些头文件,

 

2.条件编译(conditional includes),代码可以放到其它 includes 之后。

 

3. 禁用类类型的全局变量,我们也不允许用函数返回值来初始化 POD 变量

 

4. 为类中的函数加上 const 限定符表明该函数不会修改类成员变量的状态

(如 class Foo { int Bar(char c) const; };).

 

5. 不要使用 uint32_t 等无符号整型, 除非你是在表示一个位组而不是一个数值, 或是你需要定义二进制补码溢出. 尤其是不要为了指出数值永不会为负, 而使用无符号类型. 相反, 你应该使用断言来保护数据.

 

 

命名:

1. 所有类型命名 —— 类, 结构体, 类型定义 (typedef), 枚举, 类型模板参数 —— 均使用相同约定, 即以大写字母开始, 每个单词首字母均大写, 不包含下划线.

2. 变量 (包括函数参数) 和数据成员名一律小写, 单词之间用下划线连接. 类的成员变量以下划线结尾, 但结构体的就不用

3. 声明为 constexpr 或 const 的变量, 或在程序运行期间其值始终保持不变的, 命名时以 “k” 开头, 大小写混合.

4. 常规函数使用大小写混合, 取值和设值函数则要求与变量名匹配:

5. 命名空间以小写字母命名. 最高级命名空间的名字取决于项目名称.

6. 枚举的命名应当和 常量 或 宏 一致: 优先选择常量风格的命名方式

 

 

注释:

1. 每个类数据成员 (也叫实例变量或成员变量) 都应该用注释说明用途

2. 对那些临时的, 短期的解决方案, 或已经够好但仍不完美的代码使用 TODO 注释.

 

 

1.只使用空格, 每次缩进 2 个空格.

2. 左大括号总在最后一个参数同一行的末尾处, 不另起新行.例: Type par_name3) {

3. 缺省缩进为 2 个空格.

4. 换行后的参数保持 4 个空格的缩进.

5. 注意所有情况下 if 和左圆括号间都有个空格. 右圆括号和左大括号之间也要有个空格:

6. 预处理指令不要缩进, 从行首开始.

7. 访问控制块的声明依次序是 public:, protected:, private:, 每个都缩进 1 个空格.

8. 构造函数初始化列表放在同一行或按四格缩进并排多行.

9. 命名空间内容不缩进.

你可能感兴趣的:(编程知识)