在创建派生类的对象时,由于派生类的对象包含了基类的数据成员,因此派生类的构造函数除初始化其自身定义的数据成员外,还必须对基类中的数据成员进行初始化。也就是说,派生类的构造函数要负责调用基类的构造函数。假设有类A,类B,类A是基类,类B继承自类A,那么在构造对象B b时,他们构造函数的调用顺序是()A.先A的构造函数,后B的构造函数B.先B的构造函数,后A的构造函数C.构造函数的调用顺序取决于具体的调用情况D.可以由用户自定义顺序
在创建派生类的对象时,由于派生类的对象包含了基类的数据成员,因此派生类的构造函数除初始化其自身定义的数据成员外,还必须对基类中的数据成员进行初始化。也就是说,派生类的构造函数要负责调用基类的构造函数。假设有类A,类B,类A是基类,类B继承自类A,那么在构造对象B b时,他们构造函数的调用顺序是()
A.先A的构造函数,后B的构造函数
B.先B的构造函数,后A的构造函数
C.构造函数的调用顺序取决于具体的调用情况
D.可以由用户自定义顺序
参考答案和解析
基类构造函数、对象成员构造函数、派生类本身的构造函数
相关考题:
( 13 )下列关于派生类构造函数和析构函数的说法中,错误的是A )派生类的构造函数会隐含调用基类的构造函数B )如果基类中没有缺省构造函数,那么派生类必须定义构造函数C )在建立派生类对象时,先调用基类的构造函数,再调用派生类的构造函数D )在销毁派生类对象时,先调用基类的析构函数,再调用派生类的析构函数
下列关于派生类的构造函数的叙述中,正确的是( )。A.派生类通过成员初设列表的方法调用基类的构造函数,实现对基类的初始化B.派生类构造函数的调用顺序先基类后子对象构造函数C.派生类构造函数的调用顺序先子对象构造函数后基类,D.派生类构造函数是不能继承基类的
下列有关析构函数的调用顺序是( )。A.先执行基类的构造函数,然后执行派生类的析构函数B.先执行派生类的构造函数,然后执行基类的构造函数C.析构函数在派生类与基类中同时执行。D.只执行派生类的构造函数,不执行基类的构造函数
下列关于虚基类的描述中错误的是A.虚基类子对象的初始化由最派生类完成B.虚基类子对象的初始化次数与虚基类下面的派生类个数有关C.设置虚基类的目的是消除二义性D.带有虚基类的多层派生类构造函数的成员初始化列表中都要列出对虚基类构造函数调用
生成派生类对象时,派生类构造函数调用基类构造函数的条件是( )。A) 无需任何条件B) 基类中显示定义了构造函数C) 派生类中显式定义了构造函数D) 派生类构造函数明确调用了基类构造函数A.B.C.D.
下列关于派生类的构造函数的叙述中,正确的是( )。A.派生类通过成员初设列表的方法调用基本类的构造函数,实现对基本类的初始化B.派生类构造函数的调用顺序先基类后子对象构造函数C.派生类构造函数的调用顺序先子对象构造函数后基类D.派生类构造函数是不能继承基类的
下列关于派生类的构造函数的说法中,哪个是错误的 ______。A.派生类不继承基类的构造函数和赋值运算B.派生类的构造函数可以调用基类的构造函数C.派生类的构造函数先于基类的构造函数执行D.在建立派生类的实例对象时,必须调用基类的构造函数来初始化派生类对象中的基类成员
定义对象数组a[2]时,要调用2次构造函数;生成*p的对象时,要调用一次构造函数,故答案为3。A.使用虚基类可以消除由多继承产生的二义性B.构造派生类对象时,虚基类的构造函数只被调用一次C.声明“class B:virtual public A”说明类B为虚基类D.建立派生类对象时,首先调用虚基类的函数
下列关于虚基类的描述中,错误的是( )。A.虚基类子对象的初始化由派生类完成B.虚基类子对象的初始化次数与虚基类下面的派生类的个数有关C.设置虚基类的目的是消除二义性D.带有虚基类的多层派生类构造函数的成员初始化列表中都要列出对虚基类构造函数的调用
下列关于虚基类的描述中,错误的是( )。A.虚基类子对象的初始化由最派生类完成B.虚基类子对象的初始化次数与虚基类下面的派生类个数有关C.设置虚基类的目的是消除二义性D.带有虚基类的多层派生类构造函数的成员初始化列表中都要列出对虚基类构造函数的调用
下列哪一种顺序是派生类构造函数正确的调用其它构造函数顺序。()A、基类构造函数—对象成员所在类的构造函数—派生类自己的构造函数初始化自定义数据成员B、基类构造函数—派生类自己的构造函数初始化自定义数据成员—对象成员所在类的构造函数C、派生类自己的构造函数初始化自定义数据成员—对象成员所在类的构造函数—基类构造函数D、对象成员所在类的构造函数—派生类自己的构造函数初始化自定义数据成员—基类构造函数
在创建派生类对象时,构造函数的执行顺序是()A、对象成员构造函数―基类构造函数―派生类本身的构造函数B、派生类本身的构造函数―基类构造函数―对象成员构造函数C、基类构造函数―派生类本身的构造函数―对象成员构造函数D、基类构造函数―对象成员构造函数―派生类本身的构造函数
单选题下列哪一种顺序是派生类构造函数正确的调用其它构造函数顺序。()A基类构造函数—对象成员所在类的构造函数—派生类自己的构造函数初始化自定义数据成员B基类构造函数—派生类自己的构造函数初始化自定义数据成员—对象成员所在类的构造函数C派生类自己的构造函数初始化自定义数据成员—对象成员所在类的构造函数—基类构造函数D对象成员所在类的构造函数—派生类自己的构造函数初始化自定义数据成员—基类构造函数
单选题在创建派生类对象时,构造函数的执行顺序是()A对象成员构造函数―基类构造函数―派生类本身的构造函数B派生类本身的构造函数―基类构造函数―对象成员构造函数C基类构造函数―派生类本身的构造函数―对象成员构造函数D基类构造函数―对象成员构造函数―派生类本身的构造函数
单选题生成派生类对象时,派生类构造函数调用基类构造函数的条件是( )。A无需任何条件B基类中显示定义了构造函数C派生类中显式定义了构造函数D派生类构造函数明确调用了基类构造函数