7 const增强 c语言中可以通过指针操作改变const变量的值。 c++的const变量是真正的常量,例如 const int a = 10;并没有在栈开辟区域,而是在常量区有一个符号表,存放键值对。对a取地址时,相当于对常量10取地址,此时,编译器会临时开辟一个空间temp,让这个指针存放这个临时空间的地址
7.1 #define a 20 预处理阶段, 作用域全局 const int a = 20; 编译阶段, 有作用域
8 枚举增强 c语言中:
enum season
{
SPR = 0, //默认为0
SUM,
AUT,
WIN
};
void test()
{
enum season s = 2;
if(s == 2)
{
cout << s << endl;
}
}
当成员太多时,例如有10000个,当if(s == 10000)时,难以理解,含义不清(一般每隔10个作为分割,帮助识别)
c++中使用enum season s = 2出错,只能enum season s = AUT;