工学

判断题虚基类是用来解决多继承中公共基类在派生类中只产生一个基类子对象的问题。A 对B 错

题目
判断题
虚基类是用来解决多继承中公共基类在派生类中只产生一个基类子对象的问题。
A

B

参考答案和解析
正确答案:
解析: 暂无解析
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

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

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

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

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

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


正确答案:D

第2题:

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

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

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

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

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


正确答案:D
解析:本题考查的知识点是继承和派生。无论是公有、保护还是私有继承,派生类都能够访问基类的公有和保护成员,而不能访问基类的私有成员,故选项A和B不正确。公有继承时,派生类的对象可以作为基类的对象处理,派生类是基类的子类型。子类型关系是可以传递的,但是不可逆的。因此,基类的对象不可作为派生类的对象处理,即基类对象不可赋值给派生类对象。所以选项C不正确。4个选项中,只有选项D正确。

第3题:

下列关于虚基类的说法错误的是()。

A、有引入虚基类的目的是解决二义性的问题;

B、因为虚基类可被多个派生类继承,因此可以有多个副本以适应不同的派生类;

C、若某个类被说明为虚基类,则被重复继承的该类成员在派生类对象中只有一个副本;

D、在派生类对象创建时,要保证虚基类的构造函数只被调用一次。


参考答案:B

第4题:

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

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

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

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

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


正确答案:B
解析:虚基类主要是为了消除在多重继承中的二义性问题。虚基类对象的初始化次数只于对象的多少有关,与类的层次结构是没有关系的。故本题正确答案为B。

第5题:

为解决在多重继承环境中因公共基类带来的 ______ 问题,C++语言提供了虚基类机制。


正确答案:二义性
二义性

第6题:

下列对继承关系的描述中,()是正确的。

A.在公有继承中,基类中的公有成员和私有成员在派生类中都是可见的;

B.在公有继承中,基类中只有公有成员对派生类的对象是可见的;

C.在私有继承中,基类中只有公有成员对派生类是可见的;

D.在私有继承中,基类中的保护成员对派生类的对象是可见的;


参考答案:D

第7题:

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

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

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

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

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


正确答案:C

第8题:

下列对继承关系的描述中,正确的是()。

A、在公有继承中,基类中的公有成员和私有成员在派生类中都是可见的;

B、在公有继承中,基类中只有公有成员对派生类的对象是可见的;

C、在私有继承中,基类中只有公有成员对派生类是可见的;

D、在私有继承中,基类中的保护成员对派生类的对象是可见的;


参考答案:D

第9题:

解决类继承中产生的二义性的方法不包括

A.使用作用域运算符限定访问的成员函数

B.在派生类中定义同名函数,且参数表必须和基类的保持一致

C.在派生类中定义同名函数,且参数表可以和基类的不同

D.采用虚基类解决多重继承中的共同基类产生的二义性


正确答案:C
解析:继承中的二义性主要表现在多重继承中具有多条继承路径时,派生类中行为的不确定性。如果强制指定了按照某条路径访问,亦即采用域作用符限定访问的成员函数的方法可以解决之,故选项A排除。在选项B和C中,唯一的区别在于参数表是否一致,我们知道:参数表不一致同名函数属于重载,是不存在二义性问题的,故选项C是正确答案。关于选项D,虚基类是C++中解决二义性的一种有效手段。

第10题:

下面关于派生类的描述中错误的是( )

A.派生类中至少有一个基类

B.一个派生类可以作为另一个派生类的基类

C.派生类只继承了基类中的公有成员和保护成员

D.派生类的缺省继承方式是私有


正确答案:C
解析:继承方式有公有继承、私有继承和保护继承3种,缺省的继承方式是私有继承。派生类从基类继承所有的成员,但是对于基类的私有成员派生类是不可直接访问的。

更多相关问题