【C/C++区别】const

  1. const

C:常变量

编译阶段 常变量有没有做左值 其他的处理和变量一样的

可取地址改变

1.const int a = 10;

int arr[a];x

运行时,才会寻址找到a的值,编译时无法找到a的值

2.const int a = 20;

int* p = &a;

*p = 10;

C++ 常量

编译阶段 把常量使用的地方替换常量初始化的值

const int a = 10;

int* p = (int*)&a;

*p = 20;

std::cout << a << std::endl;//(a替换为10)

  1. 一定要初始化
  2. 直接:不允许做左值  
  3. 间接(指针解引用):不允许间接访问来修改常量内存 杜绝间接访问的风险

C

const 修饰的全局变量 g

C++

const 修饰的全局变量 local符号,其他文件无法使用 extern

常函数

Void Show()const  Test* const this->const Test* const this

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值