来源网址:https://wenku.baidu.com/view/732350e70975f46527d3e1c7.html
记录一些 C++ 常用到的命名规范,翻遍后面翻找使用。
常用的 3 大程序命名规则
一、匈牙利命名法
二、骆驼(Camel )命名法
三、帕斯卡( Pascal )命名法
四、下划线命名法
一、匈牙利命名法:
全局变量名 = 范围前缀 + 下划线 + 类型前缀 + 数组前缀 + 自定义命名
局部变量 = 类型前缀 + 数组前缀 + 自定义命名
函数命名 = 类型前缀 + 自定义命名
控件命名 = 控件前缀 + 自定义命名
控件事件命名 = 控件名称 + 下划线 + 事件名称
程序文件命名 = 模块名缩写 + 自定义命名
基本原则: 变量名 = 属性 + 类型 + 对象描述
1、属性:
全局变量 g_ 、 常量 c_ 、 c++类成员变量 m_ 、 静态变量 s_ 、
2、类型部分:
指针 p 、 函数 fn 、 无效 v 、 句柄 h 、长整型 l 、布尔 b 、浮点型(偶尔也代指文件) f 、双字 dw 、 字符串 sz 、 短整型 n 、 双精度浮点 d 、 计数 c (通常用 cnt ) 、 字符 ch (通常用 c ) 、 整型 i (通常用 n ) 、字节 by 、 字 w 、 实型 r 、 无符号 u
3、描述部分:
最大 Max 、 最小 Min 、 初始化 Init 、 临时变量 T (或 Temp ) 、 源对象 Src 、 目的对象 Dest 、
4、举例
g_cch: g_ 是属性描述,表示全局变量,c 和 ch 分别是计数类型和字符类型,一起表示变量类型,这里忽略了对象描述,所以它表示一个对字符进行计数的全局变量。
二、骆驼( Camel )命名法
1、驼峰法(小驼峰法):
变量一般用小驼峰法标识。驼峰法的意思是除第一个单词之外,其他单词首字母大写。
2、Pascal 法(大驼峰法):
相比小驼峰法,大驼峰法把第一个单词的首字母也大写了。常用于类名、函数名、属性、命名空间。
三、帕斯卡命名法
1、当变量名和函数名称是由两个或者两个以上单词连接在一起,而构成的唯一识别字时,用以增加变量和函数的可读性。单词之间不以空格断开或连接号( - )、下划线( _ )连结,单词的首字母都采用大写字母。
四、下划线命名法
1、用小写字母和下划线来构成变量或函数名,每个逻辑断点处用下划线来标记。
注意点:
1、标识符的命名要清晰明了,有明确含义,同时使用完整的单词或大家基本可以理解的缩写,避免使人产生误解。尽可能不使用阿拉伯数字,更切忌使用中文拼音的首字母。
2、较短的单词可通过去掉 “元音” 形成缩写、较长的单词可取单词的头几个字母形成缩写、一些单词有大家公认的缩写。
3、命名中若使用特殊约定或缩写,则要有注释说明。
4、应该在源文件的开始之处,对文件中所使用的缩写或约定,特别是特殊的缩写,进行必要的注释说明。
5、保持自己只使用一种命名风格。并且个人的命名风格需要在符合所在项目组或产品组的命名规则的前提下,才可使用。
6、i、j、k等单字符只能当做局部循环变量使用,以避免单字符变量用错后增加大量无用的查错时间。
7、命名规范必须与所使用的系统风格保持一致,并在同一项目中统一。在同一软件产品内,应规划好接口部分标识符(变量、结构、函数及常量)的命名,防止编译、链接时产生冲突。对接口部分的标识符应该又更严格限制,防止冲突。如可规定接口部分的变量和常量之前加上 “模块”标识等。
8、 用正确的反义词组命名具有互斥意义的变量或相反动作的函数等。