c++读书笔记之const篇

本文详细解析了C++中const关键字的使用方法及其注意事项,包括const变量的初始化、const与引用及指针的关系、顶层const与底层const的区别等。帮助读者深入理解const的特性。

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


<span style="font-size:18px;">
<span style="font-size:18px;">a,对于const的一些注意事项
	1,因为const可以在运行时初始化(是非常量表达式时),所以允许这样的初始化方式      
	const int conint = get();

	2,const和引用之间的关系
		因为const是一个不可改变的常量,所以允许非常量引用绑定到一个常量上去;
  	const int coninte=22;
	int &rinte=coninte;//error
	相反,将一个常量引用绑定到一个非常量是允许的,并且之后可以通过改变非常量的值来改变常量的值
	int inte = 10;
	const int &coninte = inte;
	cout << coninte;
	inte = 22;
	cout << coninte<< endl;</span>
<span style="font-size:18px;"><span style="white-space:pre">	</span>3,const与指针之间关系同引用
   3,常量与非常量之间的关系
	1,常量与非常量之间的加减乘除都是常量</span>
<span style="font-size:18px;"><span style="white-space:pre">	</span>2,允许将常量值赋值非常量,允许将非常量值赋给常量</span>
<span style="white-space:pre"><span style="font-size:18px;"></span></span><pre name="code" class="cpp"><span style="white-space:pre">	</span>int inte1 = 0;
	const int coninte =inte1;
	int  inte2 = coninte;


<span style="font-size:18px;">    <span style="white-space:pre">4</span>,顶层const与底层const</span>
<span style="font-size:18px;"><span style="white-space:pre">	</span>顶层const表示,变量是不可修改的,其实可以通过改变地址来改变,底层const表示指针所指向地址是不可更改的</span>
<span style="font-size:18px;"><span style="white-space:pre">	</span>顶层引用允许通过改变指针所指向地址来改变常量的值,而底层引用则不允许通过直接修改引用值</span><pre name="code" class="cpp"><pre name="code" class="cpp"><span style="font-size:18px;"><span style="white-space:pre">	</span>int inte1 = 0,inte2=1;
	const int *intptr = &inte1;
	cout << endl << *intptr<<endl;
	intptr = &inte2;
	cout << *intptr<<endl;

	int const *intptr1 = &inte1;
	cout << *intptr1 << endl;</span>




<span style="white-space:pre"><span style="font-size:18px;">	</span></span>
<span style="font-size:18px;">
</span>
<span style="font-size:18px;">小结:</span>
<span style="font-size:18px;"><span style="white-space:pre">	</span>第一点:赋值与(引用与指针)是不同的,赋值仅仅是值的给予,本身并没有产生其他联系;而指针与引用相当于绑定两个值在联动;</span>
<span style="font-size:18px;"><span style="font-family: Arial, Helvetica, sans-serif;">		</span>第二点:所谓常量仅仅是他自己认为他自己是常量,所以对于任何想要和他绑定在一起的  变量(姑且这样称吧)都会检查是否为常量,而对于他想要和别人绑定在</span>
<span style="font-size:18px;"><span style="white-space:pre">		</span>就没有那么多要求了,非常量也是允许的</span>
<span style="font-size:18px;"><span style="white-space:pre">	</span>理解了以上两点,其实也就理解了上面的内容。</span>
<span style="white-space:pre"><span style="font-size:18px;">		</span></span>
</span>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值