首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: #include<iostream> using namespace std; class Base { public: Base() { x=0; }
有以下程序: #include<iostream> using namespace std; class Base { public: Base() { x=0; }
admin
2013-02-27
60
问题
有以下程序:
#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<<endl;
return 0;
}
该程序运行后的输出结果是______。
选项
答案
20
解析
本题考核虚基类。本题中,虽然Derived1和Derived2都是由共同的基类 x派生而来的,但由于引入了虚基类,使得它们分别对应基类的不同副本。这时数据成员x只存在一份拷贝,不论在类Derived1中修改,还是在类Derived2中修改,都是直接对这惟一拷贝进行操作。本题程序执行语句“Derived obJ;”时,就会先调用虚基类 Base的构造函数,使得x=0,然后执行类Derived1的构造函数使得x=10,再执行类Derived2的构造函数,使得x=20。最后输出x的值为20。
转载请注明原文地址:https://www.kaotiyun.com/show/tdVp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
在下列定义语句中,编译时会出现编译错误的是()。
设有如下函数定义: #include<stdio.h> intfun(intk) {if(k<1)return0; elseif(k==1)return1; elsereturnfun(k-1)+1; } 若执行
若函数调用时的实参为变量,下列关于函数形参和实参的叙述中正确的是()。
若a是数值类型,则逻辑表达式(a==1)||(a!=1)的值是()。
下列选项中,当x为大于1的奇数时,值为0的表达式是()。
若要使int型变量a,b,c,d的值都为0,以下写法中错误的是()。
设有定义: charc[]="Cc"; FILE*fp; 且fp指向以“写文本文件”的方式成功打开的文件,若要将c中的两个字符写入文件,且每个字符占一行,则下面的选项中正确的是()。
以下不能作为软件设计工具的是()。
在希尔排序法中,每经过一次数据交换后()。
重载的关系运算符和逻辑运算符的返回类型应当是【】。
随机试题
不耐热手术用品的灭菌应首选用()
下列不属于气雾剂的优点的是
椿皮的功效是麻黄根的功效是
信息持续披露制度是公平原则在证券市场中的集中表现。()
刘某是甲有限责任公司的董事,任职期间,多次利用职务之便,指示公司会计将资金借贷给一家主要由刘某的儿子投资设立的乙公司,致使甲公司遭受损失。对此,持有公司股权0.5%的股东王某自行直接向法院对刘某提起股东代表诉讼。根据公司法律制度的规定,下列选项中,正确的有
下列交易或事项中,不应确认为营业外收入的是()。
教育的基本着眼点是()。
2012年1~3季度,浙江省实现地区生产总值24214.9亿元,上年同期增长7.7%,增速比1~2季度加快0.3个百分点。其中,第一产业实现增加值1029.4亿元,增长2.1%;第二产业实现增加值12269.0亿元,增长6.8%;第三产业实现增加值1091
下列各项中,不属于行政处分的是()。
MenorcaorMajorca?Itisthattimeoftheyearagain.Thebrochuresarepilingupintravelagentswhilenewspapersandmagazin
最新回复
(
0
)