发布时间 : 星期日 文章2010 - C++编码规范更新完毕开始阅读
4.5 指针和引用
?
应当将修饰符 * 和&紧靠变量名 示例:
char *name;
int *x, y; // 此处y不会被误解为指针
TestClass
*pointer;
// pointer to TestClass
void Modify( Tint &aInteger ); // reference parameter used
4.6 宏定义
? ?
宏名全部使用大写,多个单词时,使用下划线隔开,如:NAME_SIZE。
尽量避免使用对象宏,替代时,一般用const常量替代对象宏,用内联函数或模板替代函数宏。
4.7 const常量
?
在C++ 程序中只使用const常量而不使用宏常量,即const常量完全取代宏常量。 ?
常量定义以大写字母K开头,代码中的字符,大于0,小于-1的整型变量及其他非整型变量一律用const常量定义 例如:
const int KMagicNumber = 100; const string KUserName = \?
const常量定义在源文件中,尽量避免在头文件中定义const常量 ?
如果某一const常量与其它const常量密切相关,应在定义中包含这种关系,而不应给出一些孤立的值。 例如:
const float KRadius = 100;
const float KDiameter = KRadius * 2;
4.8 枚举变量
? ?
枚举变量定义应该包含在特定的类中。 枚举和它的成员的定义,应该采用有意义的命名方式,避免出现歧义。 ? ?
枚举成员以E开头。
枚举常量不会占用对象的存储空间,它们在编译时被全部求值。枚举常量的缺点是:它的隐含数据类型是整数,其最大值有限,且不能表示浮点数(如PI=3.14159)。
例子 :
class TestClass { ... enum TestType { ETestEumFist, ETestEumSecond, ... }; ... }; 4.9 全局变量
?
尽量避免应用全局变量,如果有特殊情况必须定义的话,全局变量以小写g开头
5 表达式和基本语句 5.1 运算符的优先级
?
一元运算符 + - * 的优先级高于对应的二元运算符。 ?
如果代码行中的运算符比较多,用括号确定表达式的操作顺序,避免使用默认的优先级。 例如:
word = (high << 8) | low