c++学习——顶层const和底层const

看《c++ primer》里介绍顶层const和底层const,看的不是很懂,看别人博客稍微有点了解想写篇博客记录一下。

点击这里查看参考博客

顶层const(指针常量)用来标明一个变量其本身是一个不可更改的常量。对于指针,被顶层const修改后,不可更改指针指向的对象

const int i=1;  //顶层const
int *const p=&i;    //顶层const,不可更改p指向的对象

底层const(常量指针)用来标明一个指针或者引用所指向的对象是一个不可更改常量。对于指针和引用,被底层const修改后,不可通过指针或引用修改指针指向的对象值

int i=1;
const int *p=&i;    //底层const
*p=3;   //错误,不可通过被const修饰的指针修改对象值
i=3;    //正确,const指针只影响修饰的对象

猜你喜欢

转载自blog.csdn.net/GumingW/article/details/81382689