单选题多继承的构造顺序可分为如下四步:①所有非虚基类的构造函数按照它们被继承的顺序构造②所有虚基类的构造函数按照它们被继承的顺序构造③所有子对象的构造函数按照它们声明的顺序构造④派生类自己的构造函数体这四个步骤的正确顺序是( )。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、对象成员构造函数―基类构造函数―派生类本身的构造函数B、派生类本身的构造函数―基类构造函数―对象成员构造函数C、基类构造函数―派生类本身的构造函数―对象成员构造函数D、基类构造函数―对象成员构造函数―派生类本身的构造函数
单选题在创建派生类对象时,构造函数的执行顺序是()A对象成员构造函数―基类构造函数―派生类本身的构造函数B派生类本身的构造函数―基类构造函数―对象成员构造函数C基类构造函数―派生类本身的构造函数―对象成员构造函数D基类构造函数―对象成员构造函数―派生类本身的构造函数
单选题下列哪一种顺序是派生类构造函数正确的调用其它构造函数顺序。()A基类构造函数—对象成员所在类的构造函数—派生类自己的构造函数初始化自定义数据成员B基类构造函数—派生类自己的构造函数初始化自定义数据成员—对象成员所在类的构造函数C派生类自己的构造函数初始化自定义数据成员—对象成员所在类的构造函数—基类构造函数D对象成员所在类的构造函数—派生类自己的构造函数初始化自定义数据成员—基类构造函数
判断题多继承情况下,派生类的构造函数中基类构造函数的执行顺序取决于定义派生类时所指定的各基类的顺序。A对B错