1.C语言的const修饰的变量都有空间,全局的在常量区,局部的在栈区;
2.C语言的const修饰的全局变量具有外部链接属性,
extern const int a;
即可使用;
3.C++语言的const修饰的变量有时有空间,有时没有(发生常量折叠,且没有对变量进行取地址操作);
4.C++语言的const修饰的变量具有内部链接属性,不可以在外部使用;但是可以加上extern变为外部链接属性;
extern const int a = 10;
5.C++不能优化的情况:
1:不能优化自定义数据类型
2:用变量给const修饰的局部变量赋值,则编译器不能优化
3:编译器是在 预处理->编译->汇编->链接 四个步骤中的编译阶段来优化;