顶层底层const

CR12L30.zip 立即下载

概念

以指针为例
顶层const (top level const) 指针本身是常量
底层const (low level const) 指针所指对象是常量

实例

int i = 0;
int *const p1 = &i; //顶层const,p1不可以改变,p1指向的对象可以改变
const int ci = 0; //顶层const,ci值不可以改变
const int *p2 = ci; //底层const, p2可以改变,p2指向 的对象不可以改变

其他

执行对象的拷贝操作的时候,顶层和底层const区分明显
底层const限制不能忽视,非const可以转成const

科技中介机构如何助力企业实现技术合作与推广?.docx 科技中介机构如何助力企业实现技术合作与推广? 立即下载

相关推荐

高校技术转移办公室如何提升科技成果的转化率?.docx

科易网基于40亿+科创知识图谱数据库,深度探索AI技术在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,研究科技创新领域的AI+数智化解决方案,推动科技创新与产业创新智能化发展。

顶层const底层const的含义和区别

首先,顶层const底层const都是相当于指针而言的,比如说const int a,这个const既不是顶层也不是底层,因为a不是指针。 其次,如何看const是修饰的什么呢。 原则是谁在const的左边就修饰谁,如果const的左边没有任何东西,就修饰右边的第一个值,以下举例说明。 const int const * p,第一个const的左边没有东西,所以修饰的是右边的int,第二const左边有int,所以修饰的也是int,这两个const都修饰的是int,所以这句话会报错。 const int

weixin_45313931的博客 2803

国央企创新负责人如何快速部署数据驱动的技术创新平台?.docx

科易网基于40亿+科创知识图谱数据库,深度探索AI技术在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,研究科技创新领域的AI+数智化解决方案,推动科技创新与产业创新智能化发展。

顶层const底层const

在C++中,const和,它们之间的区别在于它们修饰的对象及其在不同场景中的作用。

FHKHH的博客 1959

底层const顶层const到底是什么?

底层const顶层const总结: 首先顶层const底层const的说法和指针有很大的关系。指针本身是一个对象,但它又指向另一个对象,这就是指针的两种属性。 对于指针本身是一个常量,即指针的指向是一个常量,也就说不能改变指针的指向,称其为顶层const属性; 对于指针指向的对象是一个常量,即指针指向的地址的值是一个常量,也就是说不能改变指针指向内存的值,称其为底层 const属性。 在代码表现上是: int* cosnt p1 = &a;//p1是顶层const cosnt int* p2

weixin_43744293的博客 5818

C++ 顶层 const底层 const

本文详细解析了C++中const限定符的两种用法:顶层const底层const顶层const表示对象本身不可修改,底层const表示指针/引用指向的对象不可修改。

平平无奇的小甜菜 916

C++中的顶层const底层const

在C++中,顶层const可以表示任意的对象是常量,而底层const则是与指针,引用这样的复合符合类型相联系。确切地说,在指针中,既有底层const之说,也有顶层const的说法。但在引用中就只有底层const,原因是顶层const表示任意的对象是常量,而引用不是对象。而在其他的类型中出现的const一般都是顶层const int val = 3; const int val1 = 5; //顶层...

THISFOREVERYONE的博客 632

【C++】顶层const底层const

所以,指针本身是不是常量,和指针指向对象是不是常量,是两个独立的问题。将 “int &” 类型的引用绑定到 “const int” 类型的初始值设定项时,限定符被丢弃,这是因为引用的类型必须与其所引用对象的类型一致。用顶层top-level const表示指针本身是一个常量,用底层low-level const表示指针指向对象是一个常量。指针的类别必须与其所指对象的类型一致,但有两种例外情况(本文将讲第一种):指向常量的指针,指向了非常量对象。代表的是底层const,指针指向一个常量,常量自然不能改变。

wei_y0117的博客 1919

底层const顶层const

1.定义 顶层const:表示对象本身是常量,对任何数据类型都适用,也包含常量指针,但通常不包括引用。 底层const:表示指针/引用所指的对象是常量,通常是指常量引用和指向常量的指针。 2.顶层const 拷贝操作(a = b): 当b是一个顶层const类型时,仅仅意味着b的值不能改变,但并不影响传参。所以顶层const类型的对象作为被拷贝数据时,一般不受影响。 参数传递(实参-->形参): 与拷贝操作类似,顶层const作为实参传递时,一般不受影响?(

dida_zhao的博客 6137

三、顶层const底层const及常量成员函数

详细介绍了顶层const底层const及常量成员函数的使用

weixin_43627682的博客 1155

中级软件设计师手写笔记

中级软件设计师手写笔记

高校科研管理人员如何优化技术转移流程?.docx

科易网基于40亿+科创知识图谱数据库,深度探索AI技术在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,研究科技创新领域的AI+数智化解决方案,推动科技创新与产业创新智能化发展。

1788330150356092_152757008

1788330150356092_152757008

ISO14229中文全翻译+原版英文

ISO14229中文全翻译+原版英文

上一篇: [LeetCode]669. Trim a Binary Search Tree
下一篇: auto和decltype
charon____
博客等级 码龄11年 3粉丝 202原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值