问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

为什么调用基类的构造函数只能写在初始化列表中?

发布网友 发布时间:2022-05-26 01:56

我来回答

0个回答

...不能在构造函数中赋值,而只能在成员初始化表中进行?

那么ci和ri如果不在初始化列表里初始化,是不能执行完初始化操作的。也就是说,初始化const或者引用类型数据成员的唯一机会就是在构造函数初始化列表中。所以上述构造函数可以写为 A::A(int ii) : ci(ii), ri(ii) {i = ii;} 补充一点:内置类型的成员不进行隐式初始化,所以上述成员i不需...

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

(1)对于const和reference类型成员变量,它们只能够被初始化而不能做赋值操作,因此只能用初始化列表;初始化与赋值是不同的:赋值是删除原值,赋予新值,构造函数的意思是先开辟空间然后为其赋值,只能算是赋值,不算初始化;初始化列表就不一样了,开辟空间和初始化是同时完成的,直接给予一个值;常量不...

...在子类构造函数初始化列表里调用基类构造函数?

//如果基类没有默认构造函数,则子类的构造函数必须要给定基类的构造函数参数。因为,在类的实例化时是先执行基类构造函数在执行子类构造函数。子类构造函数初始化列表后面直接列出基类构造函数即可,系统会自动调用,不用用户调用。class A{ public:A(int x,int y):x(x),y(y){} private:int x; i...

...const修饰类成员变量的初始化为什么只能用构造函数的初始化列表?

这里的【只能用构造函数的初始化列表】是说不能用构造函数初始化,你完全可以像你这样在类定义的时候直接赋值 但是这样意义不大,每个这个类的实例都有一个 const double a=100.1

C++中派生类的构造函数怎么显式调用基类构造函数?

必须用初始化表的形式调用基类构造函数,才能正确的把子类继承下来的父类的成员初始化了。如果在子类构造函数体内显式调用了基类构造函数的话,那么该构造函数就会对一个在子类构造函数内存空间内的一个临时对象进行了初始化,因为没有取得正确的对象(子类对象)的指针。所以构造了半天白费。等子类构造函数...

什么情况下必须使用C++的初始化列表

3. 继承类中调用基类初始化构造函数, 实际上就是先构造基类对象, 必须使用初始化列表.别的不再说明, 什么时候必须使用初始化列表是很明显的;另外, 简单的说, 任何时候都鼓励使用初始化列表, 一些别的事情(比如在构造函数中分配资源之类的, 请参考RAII, Resource Acquizition Is Initialization)可以...

...中规定:当派生类构造函数初始化时,必须同时对基类构造函数初始化,怎 ...

构造一个对象是从内向外构造的,也就是先构造基类,再构造派生类。因此必须在派生类构造函数执行前先执行基类构造函数。你的那个例子因为构造函数都是最简单的无参数类型,所以无所谓,不需要额外明白的写出来,C++会默认帮你调用无参数的base()。实际上完整的写法应该是这样的:class follow { public:fo...

哪位能解释一下什么时候必须在初始化列表中初始化成员

最常见的情况:class B{};class A{B b;};这种情况b需要,否则调用B的默认构造函数。一般来说,编译器会告诉你什么行什么不行,按照提示做就o了

C++ 类的疑问

没有为什么,语法就是这样规定的。在构造对象时,必须先构造基类,使基类正确初始化,即调用基类的构造函数。看下面的例子,Person 类中有一个string成员:Name,Student 类继承自Person,构造Student时肯定要先初始化Person,因此需要初始化基类构造函数参数列表。如果不显式列出基类构造函数参数列表,编译器...

c++中构造函数,初始化列表和直接赋值有什么区别吗?

(2) const成员或引用类型的成员。因为const对象或引用类型只能初始化,不能对他们赋值。还有一个赋值次数,效率上的区别,初始化参数列表在对象初始化时对成员变量赋值一次,构造函数内直接赋值,对成员变量赋值两次,一次是对象构造是用默认值进行赋值,第二次是调用构造函数赋值 ...

声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
网线插座如何安装方法 无须的近义词和反义词是什么_无须是什么意思? PPT文件视图有几个? 求助很急,这个系列的图片叫什么 这个系列的韩国插画叫什么? 这种是什么类型的插画? 这个系列的图片,叫什么? 仙侠奇缘之花千骨广播剧 发到 852436014@qq.com 谢了~~ 斗罗大陆四大女主的辈分 吕薇个人荣誉 C++中,派生类私有继承基类,如何通过派生类的对象调用基类中的函数呢 生理学问题2 试图调用其基类的成员函数 C++中派生类的构造函数怎么显式调用基类构造函数? 生理学填空题:静息状态下,细胞膜对()有较大通透性,所以又称()平衡... ...在函数尾部都要再调用下基类的相应的函数? 基类的函数是干啥的?_百... 派生类调用基类的成员函数 派生类的构造函数调用基类的构造函数 怎么在派生类调用基类函数 如何在子类函数中调用基类函数 C++中怎样用派生类的成员函数调用基类的函数? PS改照片准入证是黑白复印件上面盖得红章,红章正好改在照片上,想把上面... 音频切换4选一,的原理框图!!框图!!! 在线等!!! 在07版EXCEL中,如何取消顶行隐藏? 生死狙击有幽灵双子无密保无安全问题无人用的号是多少 如何在excel2007中删除隐藏行 求4399生死狙击的辅助有透视的 为什么4399生死狙击修改gp,金币辅助 v1.0 最新版kaibuliao 现在买5g的手机合适吗? 现在适合买5g手机吗? 派生类调用基类函数 c++在主程序中通过调用基类成员函数实现输出 VC++中关于子类(派生类)消息响应函数如何调用基类函数的问题_百度... C++ 类中调用基类带参数构造函数以及常量如何初始化 可以定制ERP企业管理软件么? 请问勤哲ERP软件支持个性化定制吗? 一级建造师机电工程考试科目2011年报名费是多少钱 我用原来的重新注册了一个微信,我发现里面的钱包没了,请问要怎... 多19款大众宝来开一万多公里轮胎有问题怎么办? 轮胎几万公里换一次比较好 我的是13年大众宝来,3年两万多公里,是否要换轮胎,还有换什么轮胎比较... 想知道PVC_U和PPR这两种水管都有什么配件,和一般都有多大管径的。_百度... 购房合同的损坏,是否会影响到交房的进展呢? 购房合同撕坏了还可以办房产证吗 买方无过错的房屋买卖合同,没有预售许可证的情况下,怎样认定有效?_百度... 我买了一套二手房,可在交房时发现原签在合同上的东西有坏了的,请问我... 江苏各市面积排名 电感的电感量和所加电流的关系? 当电感的工作电流超过额定标称电流时,会导致电感的磁通量饱和,失去滤除... 功率电感,额定电流:Max值比Typ值大,这是为啥呢?求内行解答
  • 焦点

最新推荐

猜你喜欢

热门推荐