计算机二级

虚基类说明格式如下:slass 派生类名【 】<继承方式><基类名>。

题目

虚基类说明格式如下:slass 派生类名【 】<继承方式><基类名>。

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

【单选题】当不同的类具有相同的间接基类时, 。

A.各派生类无法按继承路线产生自己的基类版本

B.为了建立唯一的间接基类版本,应该声明间接基类为虚基类

C.为了建立唯一的间接基类版本,应该声明派生类虚继承基类

D.一旦声明虚继承,基类的性质就改变了,不能再定义新的派生类


为了建立惟一的间接基类版本,应该声明派生类虚继承基类

第2题:

在派生类的声明中,如果只有一个基类名,则这种继承方式称为()。

A.单继承

B.多继承

C.组合继承

D.抽象继承


单继承

第3题:

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

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

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

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

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


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

第4题:

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

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

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

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

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


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

第5题:

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

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

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

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

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


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

第6题:

派生类的一个成员函数试图调用其基类成员函数“void f();”,但无法通过编译,说明( )。

A. f()是基类的私有成员

B.f()是基类的保护成员

C.派生类的继承方式为私有

D.派生类的继承方式为保护


参考答案:A

第7题:

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

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

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

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

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


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

第8题:

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

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

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

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

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


正确答案:C

第9题:

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

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

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

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

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


参考答案:B