一种
编译优化技术。例如:2+2 应该在编译时就处理为4
比如你有以下代码。
const double PI = 3;141592653589793;
const double d = 10.0;
const double c = d/2*PI;
在编译时如果使用到c就用计算的结果来代替,这就是“常量折叠”
就是编译器不想浪费 静态内存。
就是 编译优化后, 对于常量数据, 就没有对应的变量存在了, 直接操作这个常量数值 ...
比如:
const int X = 5;
那么 Y = 2*X
在优化后是 2*5,没有这个 X 的存在
比如你有以下代码。
const double PI = 3;141592653589793;
const double d = 10.0;
const double c = d/2*PI;
在编译时如果使用到c就用计算的结果来代替,这就是“常量折叠”
就是编译器不想浪费 静态内存。
就是 编译优化后, 对于常量数据, 就没有对应的变量存在了, 直接操作这个常量数值 ...
比如:
const int X = 5;
那么 Y = 2*X
在优化后是 2*5,没有这个 X 的存在