限定一个对象为常量,该对象的值不能被改变,且该对象必须初始化
指针作为一种对象,自然也能被const修饰成常量,而指针所指向的也是对象,同样也可以被const修成成常量
1.指针所指向的对象被const修饰成常量(指向常量的指针)const double * cptr=π
从右向左解释语句:
cptr(对象名),*(是个指针),double(指向double型),const(的常量)
指针所指向的对象被const修饰成一个常量,常量无法更改,但指针本身可以更改,即指针可以指向别的地方
2.指针自己被const修饰成常量(const指针)int * const curErr=&errNumb;
从右向左解释语句:
curErr(对象名),const(这个对象被const修饰成常量),*(这个对象是个指针),int(指向int型)
指针作为一个对象,被const修饰成一个常量,无法更改,即无法指向别的地方,但指针所指向的对象是个变量,可以被修改成新的值
3.指针所指向的对象被const修饰成常量,同时指针自己也被const修饰成常量const double * const pip=π
从右向左解释语句:
pip(对象名),const(这个对象被const修饰成常量),*(这个对象是个指针),double(指向double型),const(的常量)
指针的指向和指针所指向的地址内存的值,都不能改
顶层const,底层const
权限可以缩小,但不能扩大


![[C++] const限定符 [C++] const限定符](http://www.mshxw.com/aiimages/31/1033493.png)
