C++中const的用法

时间:2022-06-11 09:33:02

1、const修饰普通变量和指针

(1)、const修饰普通变量

其写法有2种:a、const type value;

        b、type const value;

这两种写法本质上是一样的。其含义是:const修饰的类型为type的变量value是不可变的。

(2)、const修饰指针

A、const char * value;

B、char * const value;

C、char const * value;

D、const char* const value;

对于前3种,我们换种方式,给其加上括号:

A、const (char) * value;

B、(char *) const value;

C、(char) const * value;

这样看就感觉一目了然了,根据const修饰非指针变量的规则,很明显:A=C

对于A、C,const修饰的类型为char的变量*value为常量,因此,value的内容为常量不可变。

对于B,其实还有一种写法:const (char *) value;其含义为:const修饰的类型为char *的变量value为常量,因此,value指针本身为常量不可变。

对于D,其实是A和B的混合体,表示指针本身和指针内容两者皆为常量不可变。