(@转载请注明出处:http://blog.csdn.net/cmatch)
先举例:
int i = 1000;
const int * const p = &i;
在第二行看到const被使用到类型的前后,其实他们分别表示不同的含义:
在类型之前,表示p指针类型的对象为const,
在类型之后,表示p指针自己为const。
如何记忆:看看const修饰后面的内容,如... const p表示用于p自身;const int * ... 上面已经阐述了。
实践,看行解释
int main() {
const int p = 123;
int const n = 334;
//p = 333; //不能使用
//n = 444; //不能使用
int k = 343;
int l = 333;
const int * const q = &k;
cout << *q << endl;
k = 1000; //可以使用,但是可以通过别的方法修改
//q = &l; //不能使用
//*q = 2000; //不能使用
cout << *q << endl;
return 0;
}