[Effictive C++]1. 尽量用const和inline而不用#define

一、尽量使用编译器而不是预处理。

除了查找错误方便之外,还有其他的原因吗?

二、在类中使用常量

class A
{
public:
	static const int ARRAY_SIZE = 10;
	enum { ARRAY_SIZE = 10};
	int my_arr[ARRAY_SIZE];
};

上面2中写法都是正确的,enum的写法主要是考虑老式编译器的不支持。

三、define 宏函数可以用inline函数代替

       你可以用普通函数实现宏的效率,再加上可预计的行为和类型安全。

#define 宏没有类型,看起来很别扭,习惯用inline函数代替。

你可能感兴趣的:(C++,C++,effictive)