高质量C++/C编程指南-第3章-定名法则(2)
l 【法则3-1-8】用正确的反义词组定名具有互斥意义的变量或相反行动的函数等。
譬喻:
int minValue;
int maxValue;
int SetValue(…);
int GetValue(…);
2 【发起3-1-1】只管制止名字中呈现数字编号,如Value1,Value2等,除非逻辑上简直需要编号。这是为了防备措施员偷懒,不愿为定名动头脑而导致发生无意义的名字(因为用数字编号最省事)。
3.2 简朴的Windows应用措施定名法则
作者对“匈牙利”定名法则做了公道的简化,下述的定名法则简朴易用,较量适合于Windows应用软件的开拓。
l 【法则3-2-1】类名和函数名用大写字母开头的单词组合而成。
譬喻:
class Node; // 类名
class LeafNode; // 类名
void Draw(void); // 函数名
void SetValue(int value); // 函数名
l 【法则3-2-2】变量和参数用小写字母开头的单词组合而成。
譬喻:
BOOL flag;
int drawMode;
l 【法则3-2-3】常量全用大写的字母,用下划线支解单词。
譬喻:
const int MAX = 100;
const int MAX_LENGTH = 100;
l 【法则3-2-4】静态变量加前缀s_(暗示static)。
譬喻:
void Init(…)
{
static int s_initValue; // 静态变量
…
}
l 【法则3-2-5】假如不得已需要全局变量,则使全局变量加前缀g_(暗示global)。
譬喻:
int g_howManyPeople; // 全局变量
int g_howMuchMoney; // 全局变量
l 【法则3-2-6】类的数据成员加前缀m_(暗示member),这样可以制止数据成员与成员函数的参数同名。
譬喻:
void Object::SetValue(int width, int height)
{
m_width = width;
m_height = height;
}
l 【法则3-2-7】为了防备某一软件库中的一些标识符和其它软件库中的斗嘴,可觉得各类标识符加上能反应软件性质的前缀。譬喻三维图形尺度OpenGL的所有库函数均以gl开头,所有常量(或宏界说)均以GL开头。
3.3 简朴的Unix应用措施定名法则
<注:原文此处缺>