首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
若有以下程序: #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
72
问题
若有以下程序: #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全国计算机二级
相关试题推荐
一棵二叉树中共有80个叶子结点与70个度为1的结点,则该二叉树中的总结点数为
有以下程序structS{inta,b;}data[2]={10,100,20,200};main(){structSP=data[1];printf("%d\n",++(p.a));}程序运行后的输出结果是
当变量c的值不为2、4、6时,值为"真"的表达式是()。
一棵二叉树中共有70个叶子结点与80个度为1的结点,则该二叉树中的总结点数为
学校的数据库中有表示系和学生的关系:系(系编号,系名称,系主任,电话,地点),学生(学号,姓名,性别,入学日期,专业,系编号),则关系学生中的主键和外键分别是()。
下面结构体的定义语句中,错误的是()。
若有以下程序段structst{intn;structst*next;};structsta[3]={5,&a[1],7,&a[2],9,’\0’},*p;p=&a[0];则以下选项中值为6的表达式是
若有定义语句:inta=3,b=2,c=1;以下选项中错误的赋值表达式是
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:将形参s所指字符串中下标为奇数的字符按ASCII码大小递增排序,并将排序后下标为奇数的字符取出,存入形参p
一个栈的初始状态为空。现将元素1,2,3,A,B,C依次人栈,然后再依次出栈,则元素出栈的顺序是()。
随机试题
在Excel2003中,选定相应的单元格区域,在状态栏上可以查看到该单元格区域中的____________。
网桥是一种工作在()层的存储~转发设备。
口唇紫绀,颈静脉怒张,肝颈逆流征阳性可能为
药物相互作用对临床药效学的影响A、拮抗作用B、敏感化作用C、作用相加或增加疗效D、增加毒性或不良反应E、协同作用或减少不良反应亚胺培南/西司他丁复合制剂
现代城市的含义主要包括三个方面的因素,即()。
强化换热的最有效途径是()。
所给的四个选项中,选择最合适的一个填入问号处。使之呈现一定的规律性:
下列选项中关于法人的民事权利能力说法正确的是()
x=1
下面关于MODEM的叙述中错误的是______。
最新回复
(
0
)