参考答案和解析
正确答案:基类成员类对象成员非类对象成员
基类成员类对象成员非类对象成员 解析:在派生类的初始化过程中,最先初始化的是基类对象,然后是其他类的对象成员,包括自身类对象的引用或指针,或其他类的对象,最后在是非类对象成员。析构的时候则反之。
更多“在派生类中,对类对象成员,基类成员和非类对象成员的初始化程序是______。 ”相关问题
  • 第1题:

    建立一个有成员对象的派生类对象时,各构造函数体的执行次序为

    A.派生类、成员对象类、基类

    B.成员对象类、基类、派生类

    C.基类、成员对象类、派生类

    D.基类、派生类、成员对象类


    正确答案:C
    解析:在生成派生类对象时,如果派生类中含有对象成员,则先执行基类的构造函数,然后执行对象成员的构造函数,最后执行派生类的构造函数。析构函数的调用顺序与构造函数的顺序则相反。

  • 第2题:

    派生类的构造函数的成员初始化列表中,不能包含

    A.基类的构造函数

    B.派生类中子对象的初始化

    C.基类的子对象初始化

    D.派生类中一般数据成员的初始化


    正确答案:C
    解析:本题考核构造函数。在C++中,构造函数不能被继承,因此,派生类的构造函数必须通过调用基类的构造函数来初始化基类子对象。所以,在定义派生类的构造函数时,除了对自己的数据成员进行初始化外,还必须负责调用基类构造函数使基类的数据成员得以初始化。如果派生类中还有子对象,还应包含对子对象初始化的构造函数.但是它不负责基类中子对象的初始化。

  • 第3题:

    派生类的构造函数的成员初始化列表中,不能包含( )。

    A)基类的构造函数

    B)派生类中子对象的初始化

    C)基类中子对象的初始化

    D)派生类中一般数据成员的初始化


    正确答案:C

  • 第4题:

    派生类构造函数的成员初始化列表中,不能包含( )。

    A.基类的构造函数

    B.派生类中子对象的初始化

    C.基类中子对象的初始化

    D.派生类中一般数据成员的初始化


    正确答案:C
    解析: 构造函数的主要作用是对数据成员初始化。在设计派生类的构造函数中,不仅要考虑派生类所增加数据成员的初始化,还应考虑基类中构造函数的初始化。子对象是对象中的对象,子对象的初始化是在建立派生类时通过调用派生类构造函数来实现。所以派生类构造函数的任务包括3部分:对基类数据成员初始化:对子对象数据成员初始化;对派生类数据成员初始化。即本题选择选项C)。

  • 第5题:

    派生类的构造函数的成员初始化列表中,不能包含 ______。

    A.基类的构造函数

    B.派生类中子对象的初始化

    C.基类的子对象初始化

    D.派生类中一般数据成员的初始化


    正确答案:C