为了账号安全,请及时绑定邮箱和手机立即绑定

常指针指向的值为什么不能修改

请问在5:28的时候,说到this是常指针,而常指针指向的数据是不能修改的,这一点没懂。指针是常指针,也就是说指针指向的地址是不能修改的,那为什么这个地址内存中的值也是不能被修改的呢?

正在回答

3 回答

const 指针 就是只能改变指的位置,但是不能修改值

0 回复 有任何疑惑可以回复我~

const * this 和 * const this 这两种定义方式,const 修饰的都是 *,也就是说这两种定义方式的指针指向都是不能被修改的,因为 const 优先考虑修饰其左边的符号,左边没有符号才会修饰右边的符号,这两种定义方式内存地址中的数据都是可以被改变的

0 回复 有任何疑惑可以回复我~

const *this指针,只授予this指针读取权限,限制了修改权限,此时内存地址中的值只能读取、无法修改。

*const this指针,锁定this指针的指向的对象,但无法指向其它对象,此时内存地址中的值可以读取和修改。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C++远征之封装篇(下)
  • 参与学习       70930    人
  • 解答问题       514    个

封装--面向对象三大特征之一,通过案例让C++所学知识融会贯通

进入课程

常指针指向的值为什么不能修改

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信