【规则1】类名和函数名用大写字母开头的单词组合而成。
例如:
class Node; // 类名
class LeafNode; // 类名
void Draw(void); // 函数名
void SetValue(int value); // 函数名
【规则2】变量和参数用小写字母开头的单词组合而成。
例如:
BOOL flag;
int drawMode;
【规则3】常量全用大写的字母,用下划线分割单词。
例如:
const int MAX = 100;
const int MAX_LENGTH = 100;
【规则4】静态变量加前缀 s_ (表示 static )。
例如:
void Init(…)
{
static int s_initValue; // 静态变量
…
}
【规则5】如果不得已需要全局变量,则使全局变量加前缀 g_ (表示 global )。
例如:
int g_howManyPeople; // 全局变量
int g_howMuchMoney; // 全局变量
【规则6】类的数据成员加前缀 m_ (表示 member ),这样可以避免数据成员与成员函数的参数同名。
例如:
voidObject::SetValue(int width, int height)
{
m_width = width;
m_height =height;
}
【规则7】为了防止某一软件库中的一些标识符和其它软件库中的冲突,可以为各种标识符加上能反映软件性质的前缀。例如三维图形标准 OpenGL 的所有库函数均以 gl 开头,所有常量(或宏定义)均以 GL 开头。
【规则8】变量的名字应当使用“名词”或者“形容词+名词”。
例如:
float value;
float oldValue;
float newValue;
【规则9】全局函数的名字应当使用“动词”或者“动词+名词”(动宾词组)。
类的成员函数应当只使用“动词”,被省略掉的名词就是对象本身。
例如:
DrawBox(); // 全局函数
box->Draw(); // 类的成员函数
【规则10】用正确的反义词组命名具有互斥意义的变量或相反动作的函数等。
例如:
int minValue;
int maxValue;
int SetValue(…);
int GetValue(…);
【规则11】程序中不要出现标识符完全相同的局部变量和全局变量,尽管两者的作用域不同而不会发生语法错误,但会使人误解。
【规则12】命名规则尽量与所采用的操作系统或开发工具的风格保持一致。