【C++基础】——#define宏定义

尽量以const, enum, inline替换 #define
也就是说宁可以编译器替换预处理器
#define不被视为语言的一部分,因为#开头就是预处理语句,当给定一个
#define ASPECT_RATIO 1.653
的时候,在编译器开始处理源码之前他就已经被预处理器移走了,所以就可能丢失了ASPECT_RATIO,当错误来自1.653的时候,但是这个宏定义又不是你自己写的,且来自于头文件,那么你可能会浪费太多没必要的时间在这个小问题上!

参考《Effective C++》,第三版

你可能感兴趣的:(C/C++学习)