const
是编译时常量,可以用于定义数组;
const int *a, int* const a 的差别;
对函数 void func(const int &a),这样的调用 func(1) 会出错;
mutable,使const函数可以给成员变量赋值;
const成员变量的初始化,在初始化列表中进行,不能直接初始化;
staic const int 可以直接初始化,只有static const这样的组合才可以;
Static
static const 类型的一般变量可以在类内初始化,对象、数组不能在类内初始化。
const X A::x1(100); //对象的初始化
const X A::x2[] = {X(20), X(30), X(40)}; // 数组的初始化