参考答案和解析
正确答案:正确
更多“子对象的初始化要在构造函数的成员初始化列表中进行。”相关问题
  • 第1题:

    下列关于虚基类的描述中,错误的是( )。

    A.虚基类子对象的初始化由派生类完成

    B.虚基类子对象的初始化次数与虚基类下面的派生类的个数有关

    C.设置虚基类的目的是消除二义性

    D.带有虚基类的多层派生类构造函数的成员初始化列表中都要列出对虚基类构造函数的调用


    正确答案:B
    解析:本题考核虚基类的初始化。从虚基类直接或间接派生的派生类的构造函数的成员初始化列表中都要列出对虚基类构造函数的调用,但只有用于建立对象的派生类的构造函数调用虚基类的构造函数,而该派生类的所有基类中列出的对虚基类的构造函数的调用在执行中被忽略,从而保证了对虚基类子对象只初始化一次。

  • 第2题:

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

    A.基类的构造函数

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

    C.基类的子对象初始化

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


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

  • 第3题:

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

    A)基类的构造函数

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

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

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


    正确答案:C

  • 第4题:

    C#的构造函数分为实例构造函数和静态构造函数,实例构造函数可以对()进行初始化,静态构造函数只能对静态成员进行初始化。

    • A、静态成员
    • B、静态成员和非静态成员
    • C、非静态成员
    • D、动态成员

    正确答案:B

  • 第5题:

    拷贝(复制)构造函数的作用是()。

    • A、进行数据类型的转换
    • B、用对象调用成员函数
    • C、用对象初始化对象
    • D、用一般类型的数据初始化对象

    正确答案:C

  • 第6题:

    下列哪一种顺序是派生类构造函数正确的调用其它构造函数顺序。()

    • A、基类构造函数—>对象成员所在类的构造函数—>派生类自己的构造函数初始化自定义数据成员
    • B、基类构造函数—>派生类自己的构造函数初始化自定义数据成员—>对象成员所在类的构造函数
    • C、派生类自己的构造函数初始化自定义数据成员—>对象成员所在类的构造函数—>基类构造函数
    • D、对象成员所在类的构造函数—>派生类自己的构造函数初始化自定义数据成员—>基类构造函数

    正确答案:A

  • 第7题:

    静态数据成员必须在构造函数的成员初始化列表中进行初始化。


    正确答案:错误

  • 第8题:

    带有虚基类的多层派生类构造函数的成员初始化列表中都要列出虚基类的构造函数,这样将对虚基类的子对象初始化()。

    • A、与虚基类下面的派生类个数有关
    • B、多次
    • C、二次
    • D、一次

    正确答案:D

  • 第9题:

    判断题
    静态数据成员必须在构造函数的成员初始化列表中进行初始化。
    A

    B


    正确答案:
    解析: 暂无解析

  • 第10题:

    单选题
    C#的构造函数分为实例构造函数和静态构造函数,实例构造函数可以对()进行初始化,静态构造函数只能对静态成员进行初始化。
    A

    静态成员

    B

    静态成员和非静态成员

    C

    非静态成员

    D

    动态成员


    正确答案: B
    解析: 暂无解析

  • 第11题:

    单选题
    静态数据成员在(  )进行初始化。
    A

    成员函数列表

    B

    类体外

    C

    构造函数

    D

    成员函数


    正确答案: D
    解析:
    静态数据成员只能在类体外进行初始化,不能在参数初始化表中初始化。

  • 第12题:

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

    基类的构造函数

    B

    派生类中子对象的初始化

    C

    基类的子对象初始化

    D

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


    正确答案: C
    解析:
    基类子对象的初始化会在基类的构造函数中进行,派生类的构造函数会调用基类的构造函数,为基类提供参数,当基类的构造函数收到参数时会将参数传递给相应的基类子对象。

  • 第13题:

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

    A.基类的构造函数

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

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

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


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

  • 第14题:

    对基类数据成员的初始化必须在派生类的( )中的成员初始化列表处执行。

    A.派生函数

    B.析构函数

    C.内联函数

    D.构造函数


    正确答案:D
    解析:C++语言规定对基类数据成员的初始化必须在派生类的构造函数中的成员初始化列表中进行。

  • 第15题:

    静态数据成员在( )进行初始化。

    A.成员函数列表

    B.类体外

    C.构造函数

    D.成员函数


    正确答案:B

  • 第16题:

    子对象的初始化可以不放在该类的构造函数中


    正确答案:错误

  • 第17题:

    简单变量和引用变量在作为类的成员这是时,有什么区别()  

    • A、简单成员变量不需要初始化,引用变量需要在构造函数中初始化
    • B、引用成员变量不需要初始化,简单成员变量需要在构造函数中初始化
    • C、类的成员变量可以自动初始化,因此没有区别
    • D、简单成员变量会自动初始化为默认值(0),而引用变量只会自动初始化为空值,实际使用时还需要将它指向一个对象

    正确答案:D

  • 第18题:

    下列关于类的包含描述正确的是()

    • A、可以使用赋值语句对对象成员进行初始化
    • B、可以使用“参数初始式”调用成员类的构造函数初始化对象成员
    • C、被包含类可以访问包含类的成员
    • D、首先执行自身构造函数,再调用成员类的构造函数

    正确答案:B

  • 第19题:

    派生类的构造函数的成员初始化列表中可以包含的初始化项有()、()、()和()。


    正确答案:基类的构造函数;子对象类的构造函数;常数据成员;派生类其他非静态数据成员

  • 第20题:

    多重继承的派生类构造函数中执行基类构造函数的顺序取决于该派生类构造函数的成员初始化列表中出现基类初始化项的顺序。


    正确答案:错误

  • 第21题:

    填空题
    派生类的构造函数的成员初始化列表中可以包含的初始化项有()、()、()和()。

    正确答案: 基类的构造函数,子对象类的构造函数,常数据成员,派生类其他非静态数据成员
    解析: 暂无解析

  • 第22题:

    判断题
    子对象的初始化要在构造函数的成员初始化列表中进行。
    A

    B


    正确答案:
    解析: 暂无解析

  • 第23题:

    单选题
    下列哪一种顺序是派生类构造函数正确的调用其它构造函数顺序。()
    A

    基类构造函数—>对象成员所在类的构造函数—>派生类自己的构造函数初始化自定义数据成员

    B

    基类构造函数—>派生类自己的构造函数初始化自定义数据成员—>对象成员所在类的构造函数

    C

    派生类自己的构造函数初始化自定义数据成员—>对象成员所在类的构造函数—>基类构造函数

    D

    对象成员所在类的构造函数—>派生类自己的构造函数初始化自定义数据成员—>基类构造函数


    正确答案: C
    解析: 暂无解析