C++中const关键字

const与基本数据类型:

const int a=3;//表明a的值是不会改变,你在给a赋值是报错的

 

const与指针类型:

const int *p=NULL;

int  const *p=NULL;

//上面两种写法是完全等价的

int * const  p=NULL//  这种写法与上面是不相同的

//下面两种写法是一样的

const int * const p=NULL;

int const * const p=NULL;

例1:

/上述例子const修饰*p,所以*p的值不能改变:

例2:

这个例子const修饰的是p

例3:

const与引用:

上述例子给x一个引用y,但是y被const修饰,所以y的值不能改变

const示例:

上面第一句是定义一个指针y,而且y是由const来修饰,所以y值不能改变

第一句x被const修饰是固定不变的,而*y具有读权限(指针具有读权限),所以有可能改变x的值,所以是不给这样写法

第二句x没有被const修饰,所以x具有可读可写权限,所以是真确的

 

posted @ 2017-06-26 10:19  狼太白  阅读(319)  评论(0编辑  收藏  举报