单选题下列有关类继承的叙述中,错误的是(  )。A 继承可以实现软件复用B 虚基类可以解决由多继承产生的二义性问题C 派生类构造函数要负责调用基类的构造函数D 派生类没有继承基类的私有成员

题目
单选题
下列有关类继承的叙述中,错误的是(  )。
A

继承可以实现软件复用

B

虚基类可以解决由多继承产生的二义性问题

C

派生类构造函数要负责调用基类的构造函数

D

派生类没有继承基类的私有成员


相似考题
更多“单选题下列有关类继承的叙述中,错误的是(  )。A 继承可以实现软件复用B 虚基类可以解决由多继承产生的二义性问题C 派生类构造函数要负责调用基类的构造函数D 派生类没有继承基类的私有成员”相关问题
  • 第1题:

    下列关于派生类的构造函数的叙述中,正确的是( )。

    A.派生类通过成员初设列表的方法调用基类的构造函数,实现对基类的初始化

    B.派生类构造函数的调用顺序先基类后子对象构造函数

    C.派生类构造函数的调用顺序先子对象构造函数后基类,

    D.派生类构造函数是不能继承基类的


    正确答案:C

  • 第2题:

    下列有关继承和派生的叙述中,正确的是( )。

    A.如果一个派生类公有继承其基类,则该派生类对象可以访问基类的保护成员

    B.派生类的成员函数可以访问基类的所有成员

    C.基类对象可以赋值给派生类对象

    D.如果派生类没有实现基类的一个纯虚函数,则该派生类是一个抽象类


    正确答案:D
    私有继承方式为基类的公用成员和保护成员在派生类中成了私有成员,其私有成员仍为基类私有,但派生类对象可以访问基类的保护成员,所以基类对象不能赋值给派生类对象。抽象类是指含有纯虚拟函数的类,所以选项D正确。

  • 第3题:

    下列关于基类和派生类关系的叙述中,正确的是

    A.每个类最多只能有一个直接基类

    B.派生类中的成员可以访问基类中的任何成员

    C.基类的构造函数必须在派生类的构造函数体中调用

    D.派生类除了继承基类的成员,还可以定义新的成员


    正确答案:D
    解析:派生类可以只有一个直接基类,也可以同时有多个直接基类,A错。基类中的私有成员在派生类中是隐藏的,只能在基类内部访问,派生类中的成员不能访问基类中的私有成员,B错。基类的构造函数在派生类构造函数的成员初始化列表中调用,C错。D项正确。

  • 第4题:

    下列关于派生类的构造函数的说法中,哪个是错误的 ______。

    A.派生类不继承基类的构造函数和赋值运算

    B.派生类的构造函数可以调用基类的构造函数

    C.派生类的构造函数先于基类的构造函数执行

    D.在建立派生类的实例对象时,必须调用基类的构造函数来初始化派生类对象中的基类成员


    正确答案:C

  • 第5题:

    定义对象数组a[2]时,要调用2次构造函数;生成*p的对象时,要调用一次构造函数,故答案为3。

    A.使用虚基类可以消除由多继承产生的二义性

    B.构造派生类对象时,虚基类的构造函数只被调用一次

    C.声明“class B:virtual public A”说明类B为虚基类

    D.建立派生类对象时,首先调用虚基类的函数


    正确答案:C
    解析:使用虚基类的目的就是为了解决多继承路径下对基类成员的访问的二义性问题。一旦继承虚基类,那么在构造派生类对象时,虚基类构造函数就只调用一次。派生类对象调用构造函数和普通类对象一样,都是先调用基类构造函数,然后调用派生类构造函数。

  • 第6题:

    下列有关类继承的叙述中,错误的是

    A.继承可以实现软件复用

    B.虚基类可以解决由多继承产生的二义性问题

    C.派生类构造函数要负责调用基类的构造函数

    D.派生类没有继承基类的私有成员


    正确答案:D
    解析:派生方式分为两种:private派生或public派生,分别被称为私有派生和公有派生,使用 public派生,基类的所有成员在派生类中的访问权限不变。

  • 第7题:

    下列关于虚基类的叙述中,错误的是

    A.使用虚基类可以消除由多继承产生的二义性

    B.构造派生类对象时,虚基类的构造函数只被调用一次

    C.声明“class B:virtual public A”说明类B为虚基类

    D.建立派生类对象时,首先调用虚基类的函数


    正确答案:C
    解析:使用虚基类的目的就是为了解决多继承路径下对基类成员的访问的二义性问题。一旦继承虚基类,那么在构造派生类对象时,虚基类构造函数就只调用一次。派生类对象调用构造函数和普通类对象一样,都是先调用基类构造函数,然后调用派生类构造函数。

  • 第8题:

    以下关于派生类说法中正确的是()。

    • A、派生类继承了基类中除构造函数和析构函数外的全部成员
    • B、派生类继承了基类中全部成员
    • C、派生类只继承了基类中的Public成员
    • D、派生类继承了基类中的Public成员和protected成员

    正确答案:A

  • 第9题:

    下列关于继承说法中,哪个选项是正确的()

    • A、派生类可以继承多个基类的方法和属性。
    • B、派生类必须通过base关键字调用基类的构造函数
    • C、继承最主要的优点是提高代码性能
    • D、继承是指派生类可以获取其基类特征的能力。

    正确答案:D

  • 第10题:

    单选题
    以下关于派生类说法中正确的是()。
    A

    派生类继承了基类中除构造函数和析构函数外的全部成员

    B

    派生类继承了基类中全部成员

    C

    派生类只继承了基类中的Public成员

    D

    派生类继承了基类中的Public成员和protected成员


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

  • 第11题:

    单选题
    下列有关继承和派生的叙述中,正确的是(  )。
    A

    如果一个派生类私有继承其基类,则该派生类对象不能访问基类的保护成员

    B

    派生类的成员函数可以访问基类的所有成员

    C

    基类对象可以赋值给派生类对象

    D

    如果派生类没有实现基类的一个纯虚函数,则该派生类是一个抽象类


    正确答案: A
    解析:
    AB两项错误,无论是哪种继承方式,派生类都能够访问基类的公有和保护成员,而不能访问基类的私有成员;C项错误,公有继承时,基类的对象不可作为派生类的对象处理,即基类对象不可赋值给派生类对象;D项正确,包含纯虚函数的类是抽象类,如果一个抽象类的派生类没有重定义来自其基类的某个纯虚函数,则该函数在派生类中仍然是纯虚函数,这就使得该派生类也成为抽象类。

  • 第12题:

    单选题
    下列关于基类和派生类关系的叙述中,正确的是(  )。
    A

    每个类最多只能有一个直接基类

    B

    派生类中的成员可以访问基类中的任何成员

    C

    基类的构造函数必须在派生类的构造函数体中调用

    D

    派生类除了继承基类的成员,还可以定义新的成员


    正确答案: D
    解析:
    继承分为单继承和多继承,一个类只有一个直接基类时,称为单继承;一个类同时有多个直接基类时,则称为多继承。派生类的数据成员由所有基类的的数据成员与派生类新增的数据成员共同组成。

  • 第13题:

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

    A.使用虚基类可以消除由多继承产生的二义性

    B.构造派生类对象时。虚基类的构造函数只被调用一次

    C.声明“classB:virtualpublicA”说明类B为虚基类

    D.建立派生类对象时,首先调用虚基类的构造函数


    正确答案:C
    C。【解析】本题针对虚基类的定义及特点考查。虚基类的声明为“class<类名>:virtual<继承方式><基类名>”,即本题的A为虚基类。

  • 第14题:

    下列关于派生类的构造函数的叙述中,正确的是( )。

    A.派生类通过成员初设列表的方法调用基本类的构造函数,实现对基本类的初始化

    B.派生类构造函数的调用顺序先基类后子对象构造函数

    C.派生类构造函数的调用顺序先子对象构造函数后基类

    D.派生类构造函数是不能继承基类的


    正确答案:C

  • 第15题:

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

    A.使用虚基类可以消除由多继承产生的二义性

    B.构造派生类对象时,虚基类的构造函数只被调用一次

    C.声明“class B:virtual public A”说明类B为虚基类

    D.建立派生类对象时,首先调用虚基类的构造函数 .


    正确答案:C
    解析:虚基类主要解决在多重继承时,基类可能被多次继承的问题,虚基类提供了一个基类给派生类。class B:virtual public:A中很明显B继承了虚基类A,所以选项c)错误。

  • 第16题:

    一个类可以同时继承多个类,称为多继承。下列关于多继承和虚基类的表述中,错误的是______ 。

    A.每个派生类的构造函数都要为虚基类构造函数提供实参

    B.多继承时有可能出现对基类成员访问的二义性问题

    C.使用虚基类可以解决二义性问题并实现运行时的多态性

    D.建立派生类对象时,虚基类的构造函数会首先被调用


    正确答案:C
    解析:虚基类不能解决二义性的问题。

  • 第17题:

    1.  下列有关继承和派生的叙述中,正确的是(  )

    A)派生类不能访问通过私有继承的基类的保护成员

    B)多继承的虚基类不能够实例化

    C)如果基类没有默认构造函数,派生类就应当声明带形参的构造函数

    D)基类的析构函数和虚函数都不能够被继承,需要在派生类中重新实现


    B

  • 第18题:

    一个类可以同时继承多个类,称为多继承。下列关于多个继承和虚基类的表述中,错误的是( )。

    A.每个派生类的构造函数都要为虚基类构造函数提供实参

    B.多继承时有可能出现对基类成员访问的二义性问题

    C.使用虚基类可以解决二义性问题并实现运行时的多态性

    D.建立最派生类对象时,虚基类的构造函数会首先被调用


    正确答案:C

  • 第19题:

    下列有关继承和派生的叙述中,正确的是( )。

    A.如果一个派生类私有继承其基类,则该派生类对象不能访问基类的保护成员

    B.派生类的成员函数可以访问基类的所有成员

    C.基类对象可以赋值给派生类对象

    D.如果派生类没有实现基类的一个纯虚函数,则该派生类是一个抽象类


    正确答案:D

  • 第20题:

    多继承派生类构造函数构造对象时,()被最先调用。

    • A、派生类自己的构造函数
    • B、虚基类的构造函数
    • C、非虚基类的构造函数
    • D、派生类中子对象类的构造函数

    正确答案:B

  • 第21题:

    单选题
    下列关于继承说法中,哪个选项是正确的()
    A

    派生类可以继承多个基类的方法和属性。

    B

    派生类必须通过base关键字调用基类的构造函数

    C

    继承最主要的优点是提高代码性能

    D

    继承是指派生类可以获取其基类特征的能力。


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

  • 第22题:

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

    使用虚基类可以消除由多继承产生的二义性

    B

    构造派生类对象时,虚基类的构造函数只被调用一次

    C

    声明“class B: virtual public A”说明类B为虚基类

    D

    建立派生类对象时,首先调用虚基类的构造函数


    正确答案: D
    解析:
    虚基类可以消除由多重继承产生的二义性。虚基类的说明格式是:class<类名>: virtual<继承方式> <基类名>,其中关键字virtual与继承方式放置顺序无关,但必须位于基类名之前,且virtual只对紧随其后的基类名起作用。对于本题来说,声明“class B: virtual public A”说明类A为虚基类。

  • 第23题:

    单选题
    多继承派生类构造函数构造对象时,()被最先调用。
    A

    派生类自己的构造函数

    B

    虚基类的构造函数

    C

    非虚基类的构造函数

    D

    派生类中子对象类的构造函数


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