C/C++ 编程规范总结-1
https://developer.aliyun.com/article/1507970
规则2-5-1
函数声明时,类型与名称不允许分行书写
3. 注释
规则3-1
文件头部必须进行注释,包括:.h文件、.c文件、.cpp文件、.inc文件、.def文件、编译说明文件.cfg等。
注释必须列出:版权信息、文件标识、内容摘要、版本号、作者、完成日期、修改信息等
规则3-2
函数头部应进行注释,列出:函数的目的/功能、输入参数、输出参数、返回值、访问和修改的表、修改信息等。
说明:注释必须列出:函数名称、功能描述、输入参数、输出参数、返回值、修改信息等
规则3-3
包含在中代码块的结束处应加注释,便于阅读。
特别是多分支、多重嵌套的条件语句或循环语句。
规则3-4
注释应与其描述的代码相近,对代码的注释应放在其上方或右方(对单条语句的注释) 相邻位置不可放在下面,如放于上方则需与其上面的代码用空行隔开
4. 命名规则
规则4-1
标识符要采用英文单词或其组合,便于记忆和阅读,切总使用汉语拼音来命名。
标识符应当直观且可以拼读,可望文知义,避免使人产生误解。程序中的英文单词一般不要太复杂,用词应当准确。
规则4-2
标识符的命名应当符合“min-lengt && max-information”原则
较短的单词可通过去掉“元音”形成缩写,较长的单词可取单词的头几个字母形成缩写,一些单词有大家公认的缩写,常用单词的缩写必须统一。协议中的单词的缩写与协议保持一致对于某个系统使用的专用缩写应该在某处做统一说明。
例如:
- temp 可缩写为 tmp ;
- flag 可缩写为 flg ;
- statistic 可缩写为 stat ;
- increment 可缩写为 inc ;
- message 可缩写为 msg ;
规则4-3
用正确的反义词组命名具有互斥意义的变量或相反动作的函数等
- add / remove;
- begin / end;
- create / destroy;
- insert / delete;
- first / last;
- get / release;
- increment / decrementputget;
- lock / unlock ;
- open / close ;
- min / max;
- old / new;
- start / stop;
- source / target ;
- next / previous;
- show / hide;
- send / receive ;
- source / destination;
- cut / paste;
- up / down;
规则4-4
宏、常量名都要使用大写字母,用下划线 '_' 分割单词。
预编译宏定义使用下划线 '_' 开始。
例如:
DISP_BUF_SIZE、MIN_VALUE、MAX_VALUE
规则4-5
变量名长度应小于31个字符,以保持与ANSI C标准一致。
不得取单个字符(如i、j、k等)作为变量名,但是局部循环变量除外。
规则4-6
程序中局部变量不要与全局变量重名
尽管局部变量和全局变量的作用域不同而不会发生语法错误,但容易使人误解。
规则4-7
使用一致的前缀来区分变量的作用域
变量活动范围前缀规范如下:
规则4-8
使用一致的小写类型指示符作为前缀来区分变量的类型。
规则4-9
完整的变量名应由前缀+变量名主体组成,变量名的主体应当使用“名词”或者“形容词 + 名词”,且首字母必须大写。
例如:
- float g fValue; // 类型为浮点数的全局变量
- char *pcOldChar; // 类型为字符指针的局部变量char
规则4-10
结构名、联合名、枚举名由前缀T_开头。
事件名由前缀EV 开头
规则4-11
类名采用大小写结合的方法。在构成类名的单词之间不用下划线,类名在开头加上C,类的成员变量统一在前面加m_前缀
建议4-12
尽量避免名字中出现数字编号,如Value1、Value2等,除非逻辑上的确需要编号
建议4-13
标识符前最好不加项目、产品、部门的标识
这样做的目的是为了代码的可重用性
C/C++ 编程规范总结-3