首页 > 编程语言 > 详细

25、C++的顶层const和底层const

时间:2021-06-28 09:38:42      阅读:24      评论:0      收藏:0      [点我收藏+]

概念区分:

1.顶层const:指的是const修饰的变量本身是一个常量,无法修改,指的是指针,就是 * 号的右边

2.底层const:指的是const修饰的变量所指向的对象是一个常量,指的是所指变量,就是 * 号的左边

技术分享图片

 

区分作用:

1.执行对象拷贝时有限制,常量的底层const不能赋值给非常量的底层const

2.使用命名的强制类型转换函数const_cast时,只能改变运算对象的底层const

 

1.int const a和const int a均表示定义常量类型a。

2.const int *a,其中a为指向int型变量的指针,const在 * 左侧,表示a指向不可变常量。(看成 const (*a),对引用加const)

3.int *const a,依旧是指针类型,表示a为指向整型数据的常指针。(看成const(a),对指针const)

 

25、C++的顶层const和底层const

原文:https://www.cnblogs.com/crbhf/p/14942811.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!