首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
若有以下程序: #include <iostream> using namespace std; class Base { public: Base() { x=0;
若有以下程序: #include <iostream> using namespace std; class Base { public: Base() { x=0;
admin
2010-03-29
78
问题
若有以下程序: #include <iostream> using namespace std; class Base { public: Base() { x=0; } int x; }; class Derivedl : virtual public Base { public: Derivedl() { x=10; } }; class Derived2 : virtual public Base { public: Derived2() { x=20; } }; class Derived : public Derivedl,protected Derived2 { }; int main () { Derived obj; cout<<obj.x<<end1; return 0; } 该程序运行后的输出结果是( )。
选项
A、10
B、20
C、30
D、0
答案
2
解析
本题中,虽然Derived1和Derived2都是由共同的基类x派生而来的,但由于引入了虚基类,使得它们分别对应基类的不同副本。这时数据成员x只存在一份拷贝,不论在类Derived1修改,还是在类Derived2中修改,都是直接对这惟一拷贝进行操作。本题程序执行语句“Derived obj”时,就会先调用虚基类Base的构造函数,使得x=O,然后执行类Derived1的构造函数使得x=10,再执行类Derived2的构造函数,使得x=20。最后输出x的值为20。
转载请注明原文地址:https://kaotiyun.com/show/VFjp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列对队列的描述中正确的是()。
由关系R1和:R2得到关系R3的操作是
有如下嵌套的if语句if(a
某系统总体结构图如下图所示,该系统结构图的最大扇出数、最大扇入数的总和是
下列数据结构中,属于非线性结构的是
软件测试的目的是
设栈的顺序存储空间为S(1:m),初始状态为top=0。现经过一系列正常的入栈与退栈操作后,top=m+1,则栈中的元素个数为
如果需要打开一个已经存在的非空文件“FILE”并进行修改,正确的语句是()。
交换两个变量的值,不允许用临时变量,应该使用下列()位运算符。
随机试题
TomandIare______seeingyou,sodon’tdisappointus!
自发性气胸保守治疗的适应证是
关于坐位平衡训练的说法正确的是
A、张口受限B、复视C、耳鼻出血D、颅面分离E、咬错乱下颁骨多发骨折常伴有
居民的生活补贴对生产有()。
已知,求an及级数的和.
项目经理小张对自己正在做的一个项目进行成本挣值分析后,画出了如下所示的一张图,当前时间为图中的检查日期。根据该图小张分析:该项目进度(178),成本(179)。(178)
I’venever______thetheorythatpeoplearemoreimportantthananimals.
Aswindler’s______isusuallyagulliblepersonwhoisunabletoresisttheswindler’straps.
A、Alltheextremeweatherevents.B、ElNinoandawarmerclimate.C、Lightsnowsandrecordrain.D、Theland’ssurroundedbyocea
最新回复
(
0
)