变量命名

来源:互联网 发布:java轻量级javaee开发 编辑:程序博客网 时间:2024/05/16 11:08

变量名的力量

一、要完全、准确的描述出该变量所代表的意义

1、尽可能的明确,像temp,i,x,x1,x2 是不好的命名,因为代表的是一个未知量。

2、类似Total,Sum,Average,Max,Min,Record,String,Pointer这样的表示计算结果的词语修饰某个变量时,最后放到后面使用。

stdTotal  stdMax       一致性和对称性好totalStd  maxStd       对称性和可读性就很差

二、给特定类型的数据命名

1、为循环下标命名时,i,j,k只能适用于简单的循环中,而且只能在循环之内使用,尽可能用比i,j,k更具体更形象的命名。

2、为状态变量命名时,状态变量是用于描述程序的状态,绝大多数都是条件判断语句中的变量,最常用的错误做法就是后面加flag

if(flag)...  //这个flag表达的意思极其模糊if(printFlag==10)... //同理,指代的也不清晰if(dataReady)...if(printdata)...//这样命名清晰

3、为布尔型变量命名

为布尔型变量赋予隐含“真假”含义的名字
例如经典的命名方式:

bool done,在事情完成之前done设为false,完成后设为truebool error,在错误发生之前把error设为false,发生时设为truebool found,在发现之前把found设为false,发现之后设为true//很多人喜欢在前面添加isif(done)        if(isDone)if(error)       if(isError)if(found)       if(isFound)/*左边的命名可读性和整洁性要好于右边*/

4、为枚举变量命名

使用组前缀,如Color_,Planet_,Month_,例如:Color_Red,Color_Blue

三、常用做法

1、标识全局变量

在全局变量名的前面加上g_前缀,因为滥用全局变量的问题很常见。

2、标识成员变量

通过命名来判断它既不是局部变量,也不是全局变量,比如在成员变量名前添加m_前缀来表示是类的成员变量,以表明它是成员数据。

3、标识类型声明

为标识类型名添加前缀t_前缀,如 t_char, t_menu,

4、标识具名常量

给常量名添加c_前缀

5、标识枚举类型的元素

为枚举类型名添加e_或E_前缀。