C++ const关键字总结

const 变量

const 修饰的对象转换为一个常量,不可被修改。
同一工程中const int val = 8全局常量val只作用在本文件中,即使另一文件用extern const int val声明也不行,需在定义时使用extern const int val = 8其他文件才可extern声明访问。

const 指针

const int *a1;//表示p1指向的整型不可修改
int * const a3 = &a;//表示a3指针不可修改,只能指向a的地址;const在 * 号的右边

const 引用

当引用的对象是const对象时,引用也必须是const
const int val = 1024;
const int &refVal = val;

const 函数参数

传递过来的参数在函数内不可以改变,与上面修饰变量时的性质一样。

const 函数返回值

形如:
const int * fun1( ){ }
const int fun2( ){ }
如果返回const data,non-const pointer,返回值也必须赋给const data,non-const pointer。因为指针指向的数据是常量不能修改。

如果函数返回值采用“值传递方式”,由于函数会把返回值复制到外部临时的存储单元中,加const 修饰没有任何价值。所以,对于值传递来说,加const没有太多意义。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值