使用 #define 的缺点:
你的工程组成员,定义了一个文件
“aa.h”
#define max 666666
你包含了这个头文件
#include <iostream> #include "aa.cpp" int main() { 。。。。。。 }
这时候你的程序运行出错了, 抛出了一个 666666 处的错误。 why?这是由于#define由预处理器替换成 666666, 所以编译器只知道 666666, 而不知道 max
你会很懵逼。 你要一个个去 “aa.h"这个头文件中去找??? too young too simple
解决方法;
用const代替 #define, 这个操作由编译器执行( 作为一个语言常量,max肯定会被编译器获知,并且进入记号表内), 所以不会出现报 666666 这种错误,而会直接抛出变量名 的错误。 以便于定位错误
const auto max = 666666;
特别注意:未完待续