C++有哪几种情况只能用初始化列表,而不能用赋值?

 我来答
汝宜广信鸥
2020-04-21 · TA获得超过3735个赞
知道大有可为答主
回答量:3061
采纳率:27%
帮助的人:176万
展开全部
(1)对于const和reference类型成员变量,它们只能够被初始化而不能做赋值操作,因此只能用初始化列表;初始化与赋值是不同的:
赋值是删除原值,赋予新值,构造函数的意思是先开辟空间然后为其赋值,只能算是赋值,不算初始化;初始化列表就不一样了,开辟空间和初始化是同时完成的,直接给予一个值;常量不能被赋值,只能被初始化,所以必须在初始化列表中完成;C++的引用也一定要初始化,所以必须在初始化列表中完成。【
1)
引用必须被初始化,指针不必;
2)
引用初始化以后不能被改变,指针可以改变所指的对象;
3)
不存在指向空值的引用,但是存在指向空值的指针。】
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式