const常量为什么只能在定义时赋初值?
是的。
因为,const常量在赋初值时,必须是编译期间可见的值,比如:
const int cval = 5;
这样的初始化赋值才是正确的,如果使用一个变量或者调用函数给const常量赋初值,则是错误的。
因此 给const赋初值,必须在定义const常量的时候为其赋初值,并且之后不能再赋值。