const的使用

const的使用:
作用:定义常变量
规则如下:
1.基本的数据类型对于const是透明的
例:int const ca = 0; const int ca = 0;//ca和cb是等价的

2.cosnt限定它的直接右边
例:const int*cp = &a;cp = 100;(X)
因为const限定它的直接右边,int对于const透明,所以
cp的值不能被修改
int *const cp2 = &a;cp2 = &b;(X)
同理,const限定 cp2,所以cp2的值不能被修改
int *const cp2 = &a;*cp2 = 100;(√)
const限定cp2,所以 *cp2的值可以被修改

3.权限可以缩小或者同等传递,但不能被放大
例:int a = 10;
a = 20;
int b = 20;
int const ca = 10;
//ca = 20;//error
//ca = 10;//error
//int const cb;//error
const int cb = 10;//完全等同ca
//cb = 20;//error
int * p = &a;
const int *cp = &a;
//*cp = 100;//error//直接右边不能做左值
cp = &b;
int *const cp2 = &a;
//cp2 = &b;//error,直接右边不能做左值
*cp2 = 100;

int const *cp3 = &a;//cp3等价cp
cp3 = &b;
//*cp3 = 100;//error
const int *const cp4 = &a;
//cp4 = &b;
//*cp4 = 100;
这两个值都不能改变

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值