Const 限定符
1、
const int a = 1 等价 int const a = 1//const对象必须初始化
//C++中const修饰的变量不能改变
//C中const修饰的变量可以通过指针修改
2、
int i = 42; const int j = i;//变量给常量初始化
3、
int i = 42; const int &j = i;//正确,但不能通过j修改i
4、
const int *a//底层const const修饰的是指针所指向的内存空间,即指针所指向的内存空间的值不能改变 int* const a//顶层const const修饰的是指针,即指针的值不能改变
5、
class Base { public: Base(int a) :a(a){} void print(void) const { //this->a = 3; 无法被赋值 cout << a << endl; } private: int a; };