作用
int b = 4;
const int a = 15; //a是一个常量
const int *p = &b; //*号在 const 右边, 指向的是常量的指针
// *p = *p + 1; //这行是bug
int * const q = &b; //*号在 const 左边, 指针本身是常量
*q = *q + 1; //此行正确
int c = 1;
// q = &c; //此行是bug
std::cout << b << std::endl;
常量引用可以指向一个非常量, 但非常量引用不能指向常量。即:
int c1 = 0;
const int &c = c1; //正确
const c2 = 0;
int &cc = c2; //错误