首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
若有以下程序: #include <iostream> using namespace std; class Base { public: Base() { x=
若有以下程序: #include <iostream> using namespace std; class Base { public: Base() { x=
admin
2009-02-15
44
问题
若有以下程序: #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、20
B、30
C、10
D、0
答案
1
解析
本题考核虚基类的应用。本题中,虽然Derivedl和Derivec[2都是由共同的 基类x派生而来的,但由于引入了虚基类,使得它们分别对应基类的不同副本。这时数据成员x只存在一份拷贝,不论在类Derivedl中修改,还是在类Derivect2中修改,都是直接对这惟一拷贝进行操作。本题程序执行语句“Derived obj;”时,就会先调用虚基类Base的构造函数,使得x=0,然后执行类Derivedl的构造函数使得 x=10,再执行类Derived2的构造函数,使得x=20。最后输出x的值为20。
转载请注明原文地址:https://kaotiyun.com/show/O7kp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
C语言中规定,程序中各函数之间()。
以下选项中正确的定义语句是
以下程序:#includevoidfun(intx){if(x/2>1)fun(x/2);printf("%d",x);}main(){fun(7);printf(”\n”);}程序运行后
若有定义:charc;intd;,程序运行时输入:c=1d=2<回车>,能把字符1输入给变量c、把整数2输入给变量d的输入语句是()。
以下叙述中正确的是()。
有以下程序:#include<stdio.h>main(){intn=2,k=0;while(k++&&n++>2);printf("%d%d\n",k,n);}
以下定义数组的语句中错误的是
对关系S和R进行集合运算,结果中既包含S中的所有元组也包含R中的所有元组,这样的集合运算称为()。
开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做()。
随机试题
早期后除极(earlyafter-depolarization)
设函数z=zcosy+tant,其中x=sint,y=et,求.
胫腓骨中1/3骨折患者,复位后,用长腿石膏固定,4个月骨折愈合拆除石膏后,发现膝关节功能发生障碍,其原因是
A、附子配干姜B、丁香配柿蒂C、吴茱萸配干姜D、附子配麻黄、细辛E、高良姜配香附治亡阳欲脱及中虚寒盛宜选用
()适用0.3‰的印花税税率。
在发生安全事故时,要求物业管理企业履行的义务包括()。
《说天寿山》一文的作者()是近代思想家、文学家及改良主义的先驱者。
班级管理的几种模式包括()
根据我国现行宪法,有权改变或撤销地方各级国家行政机关不适当的决定和命令的国家机关是()。
韩梅是北京某企业采购部门的经理,为了节省采购成本,提高决策效率,她要求所有采购部门的员工在采购过程中都要使用Excel来分析采购成本并进行辅助决策。请根据下列要求帮助她运用已有的数据完成这项工作:在“方案摘要”工作表中,将单元格区域B2:G10设置为打
最新回复
(
0
)