这个条款也可以改为:“宁可使用编译器,而不是预处理器” 比较好,因为#define 不被视为语言的有一部分。 结论: 对于单纯常量,组好以const 或者enum 替换#define对于形似函数的宏(macros),最好使用inline 函数替换#define。