C++的四个组成部分。c , c++ ,template c++ ,STL
条款02:尽量以 const,enum,inline 替换#define
#define COUNT 19 在编译前被处理,编译后 不会出现 COUNT 而是19,COUNT 不会被放到记号表中,这对调试增加了困难,可以用 const int count=19 进行替换。
class专属常量:为了将常量的作用域限制于class内,你必须让它成为class的一个成员;而为确保只有一份实体,你必须让它成为一个static成员:
class Game{
private:
static const int num ;
....
public:
....
};
const int Game::num=5;
在类定义文件中对num进行初始化。
note:#define 没有作用域的概念
对于单纯常量,最好以const对象或enums替换#define
对于形似函数的宏,最好用inline函数替换#define
阅读(472) | 评论(0) | 转发(0) |