C++顶层const和底层const的区别

本文详细解释了C++中顶层const与底层const的区别。顶层const指的是指针本身的不变性,即指针指向的位置不可更改;而底层const指的是指针所指向的对象或内置类型的不变性,即对象本身的内容不可更改。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

顶层const和底层的const主要是针对指针来说的。
所谓顶层const是指指针的不变性,即指针指向的位置不变!int *const p = &i; 则p这个值不会再变,在这里你可以通过其他方式改变i这个值,比如说你可以直接赋值i = 9;。这样const也拿你没办法。
而底层const则是指指针指向的对象或者内置类型不变,const int *p = &i;则这里的i的值就不许再变了,但是你仍然可以改变p,比如说你可以这样const int *p = &j;
我理解的const是一种约定,是说我用了const就不会改变变量的值了,而其他人乱动我也没办法。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值