2.6尽量用const代替define
C:
#define MAX 1024;
C++:
const int max=1024;
原因:define定义的宏从未被编译器看到过,因为在预处理阶段,所有的MAC都已经被替换成了1024。如果MAX不在main里面,编译出错会出现1024,不出现MAX,不容易解决此错误。
#const与#define的区别
1.const有类型,可进行编译器类型安全检查。#define无类型,不可进行类检查。
2.const有作用域,而#define不重视作用域,默认定义处到文件结尾,如果定义在指定作用域下有效的常量,那么#define就不能用。