命名规则
- 在名称中只能使用字母字符、数字和下划线(_)
- 名称的第一个字符不能是数字
- 区分大写字符与小写字符
- 不能将C++关键字用作名称
- 以两个下划线或下划线和大写字母打头的名称被保留给实现(编译器机器使用的资源)使用。以一个下划线开头的名称被保留给实现,用作全局标识符
- C++对于名称的长度没有限制,名称中所有的字符都有意义,但有些平台有长度限制
命名方案
函数名可以使用骆驼命名法,变量名使用匈牙利命名法,常量名全部字母大写,类名首字母大写
骆驼命名法
printEmployeePaychecks();
print_employee_paychecks();
第一个函数名使用了骆驼式命名法——函数名中的每一个逻辑断点都有一个大写字母来标记;第二个函数名使用了下划线法----函数名中的每一个逻辑断点都有一个下划线来标记。
骆驼式命名法近年来越来越流行了,在许多新的函数库和Microsoft Windows这样的环境中,它使用得当相多。另一方面,下划线法是c出现后开始流行起来的,在许多旧的程序和UNIX这样的环境中,它的使用非常普遍。
帕斯卡命名法
与骆驼命名法类似。只不过骆驼命名法是首字母小写,而帕斯卡命名法是首字母大写,如:
public void DisplayInfo();
string UserName;
二者都是采用了帕斯卡命名法. 在C#中,以帕斯卡命名法和骆驼命名法居多
匈牙利命名法
匈牙利命名法通过在变量名前面加上相应的小写字母的符号标识作为前缀,标识出变量的作用域,类型等。这些符号可以多个同时使用,顺序是先m_(成员变量), 再指针,再简单数据类型,再其他。例如:m_pszStr, 表示指向一个以0字符结尾的字符串的指针成员变量。
匈牙利命名法关键是:标识符的名字以一个或者多个小写字母开头作为前缀;前缀之后的是首字母大写的一个单词或多个单词组合,该单词要指明变量的用途。
属性部分
前缀 | 意义 |
---|---|
g_ | 全局变量 |
c_ | 常量 |
m_ | C++类成员变量 |
s_ | 静态变量 |
类型部分:
前缀 | 意义 |
---|---|
p | 指针 |
fn | 函数 |
v | 无效 |
h | 句柄 |
l | 长整型 |
b | 布尔 |
f | 浮点型(有时也指文件) |
d | 双精度浮点 |
i | 整型 |
n | 短整型 |
s/sz/str | 字符串 |
c/ch | 字符 |
u | 无符号 |
by | 字节 |
w | 字 |
dw | 双字 |
描述部分:
前缀 | 意义 |
---|---|
Max | 最大 |
Min | 最小 |
Init | 初始化 |
Tmp | 临时变量 |
Cnt | 计数 |
Src | 源对象 |
Dst | 目标对象 |