Skip to content

Google C++ 风格指南概述

命名约定

函数命名,变量命名、文件命名要有描述性,少用缩写

文件命名

文件名要全部小写,用下划线 (_) 连起来,c++ 文件要以 .cc 结尾,头文件以 .h 结尾,专门插入文本的文件以 .inc 结尾

类命名

类的每个单词首字母均大写,不包含下划线,比如:MyExcitingClass

变量命名

变量名一律小写,单词之间用下划线连接

类的成员变量以下划线 (_) 结尾

结构体成员变量和类一样

常量命名

在全局或类里的常量名称前加 k: kDaysInAWeek. 且除去开头的 k 之外每个单词开头字母均大写。

所有编译时常量,无论是局部的,全局的还是类中的,和其他变量稍微区别一下。k 后接大写字母开头的单词:

const int kDaysInAWeek = 7;

函数命名

常规函数使用大小写混合,如 MyExcitingFunction()

如果您的某函数出错时就要直接 crash, 那么就在函数名加上 OrDie.

取值(Accessors)和设值(Mutators)函数要与存取的变量名匹配,用小写:int num_entries() const { return num_entries_; }

函数参数

跟变量命名一样

宏命名

全部大写,像这样命名:MY_MACRO_THAT_SCARES_SMALL_CHILDREN

总结

Google 的命名约定很高明,比如写了简单的类 QueryResult, 接着又可以直接定义一个变量 query_result, 区分度很好;再次,类内变量以下划线结尾,那么就可以直接传入同名的形参,比如 TextQuery::TextQuery(std::string word) : word_(word) {} , 其中 word_ 自然是类内私有成员。

图解

voidccc制作了一个图解,可以参考一下