一直以来,变量等的命名总是没有规律,写代码时总感觉有点没有写成自己想要的样子,因此总结一下命名规则,形成自己的代码习惯。我觉得匈牙利命名法比较适合我,所以接下来就说一下匈牙利命名法。
匈牙利命名法规则可表示为:变量名 = 作用域前缀 + 变量类型 + 变量含义(英文表示)。
匈牙利命名法通过在变量名前面加上相应的小写字母的符号标识作为前缀,标识出变量的作用域、类型等。这些符号可以多个同时使用,顺序是先作用域前缀(例如,m_表示成员变量)、再指针、再简单数据类型、再其它。
1、作用域前缀
前缀 | 含义 |
g_ | 全局变量(global) |
s_ | 静态变量(static) |
m_ | 成员变量(member) |
c_ | 常量修饰符(const) |
无 | 局部变量 |
这几个作用域前缀可以根据实际情况组合使用。
2、类型前缀
前缀 | 含义 |
n | 整数类型int |
u | 无符号整型unsigned int |
c | 字符类型char |
p | 指针pointer |
l | 长整型long int |
s | 短整型short int |
by | 无符号字符unsigned char |
f | 单精度浮点型float |
d | 双精度浮点型double |
b | 布尔类型bool |
sz | 以'\0'结尾的字符串 |
str | 字符串string |
arr | 数组array |
当变量命名不能清楚的表达该变量的含义时,要加以注释。
感谢下面两篇博文的博主:
1、https://blog.csdn.net/Vince_ZHU/article/details/82891615
2、http://www.cnblogs.com/ggjucheng/archive/2011/12/15/2289291.html