C++之const关键字

 

const关键字——用来控制变量是否可以变化。

 

const与指针类型

1、说一个比较好记的方法来区分 int const *p与 int* const p,把*读作pointer to然后从后往前读。

第一个int const *p就可以读作 p is a pointer to const int,p是指向常量的指针

第二个int* const p就可以读作 p is a const pointer to int,p是指向int型的常指针

 

2、const指针主要看const修饰p还是*p,修饰p不能改变p的指向(不能使p指向其他变量),修饰*p不能改变*p的值(即p指向的变量的值)

 

3、把const读作常量,把*读做指针,按顺序翻译,来试试

const int * p; //常量指针p

int const * p; //常量指针p

int * const p; //指针常量p

指针常量和常量指针:

<1>. 指针常量,指针本身就是个常量 ,所以不能重新指向,int * const p,const修饰的是p(即指针本身)

<2>. 常量指针,指向常量的指针,本身是普通指针,所以可以重新指向,但不能通过*p重新赋值,int const *p,const修饰的是*p(即指针指向的变量)

 

posted @ 2018-09-03 17:36  eeeeeeee鹅  阅读(139)  评论(0编辑  收藏  举报