指针常量和常量指针,以及constexpr

发布时间 2023-03-23 09:17:53作者: 海蓝笨

常量指针和指针常量很容易被混淆,其实可以使用一个简单的记忆方式。

  c++中我们一般从右往左进行解析,比如一个简单的赋值操作。a=b=c;他的含义就是b=c的值,然后将b的值赋给a。

指针常量的写法有:

  int* const p;

常量指针:

  const int* p;

  int const *p;

 

几点说明:

      1.int可以不用管

      2.在读的时候可以简单把*读作指针,const读作常量

      3.从右往左解析,对于指针常量,int* const p;p是一个指针,const修饰。那么表示指针的指向是不可以改变的

              对于常量指针,无论是const int* p还是int const* p。从右往左都是*p,*p代表一个值或者说一个对象。然后const修饰,说明是指针                                                          指向的值是一个常量,我们不可以用这个指针来修改该变量或者说对象。但是可以使用其他指向他的指针或者是引用来修改。