首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: #include <iostream> using namespace std; class Base { public: Base() { x=0; } int x;
有以下程序: #include <iostream> using namespace std; class Base { public: Base() { x=0; } int x;
admin
2010-03-29
51
问题
有以下程序:
#include <iostream>
using namespace std;
class Base
{
public:
Base()
{
x=0;
}
int x;
};
class Derivedl: virtual public Base
{
public:
Derived1()
{
x=10;
}
};
class Derived2: : virtual public Base
{
public:
Derived2()
{
x=20;
}
};
class Derived: public Derived1,protected Derived2
{ };
int main()
{
Derived obj;
cout<<obj.x<<endl;
return 0;
该程序运行后的输出结果是【 】。
选项
答案
20
解析
本题考核虚基类。本题中,虽然 Derivedl 和 Derived2 都是由共同的基类x派生而来的,但由于引入了虚基类,使得它们分别对应基类的不同副本。这时数据成员x只存在一份拷贝,不论在类Derived1中修改,还是在类 Derived2中修改,都是直接对这惟一拷贝进行操作。本题程序执行语句“Derived obj;”时,就会先调用虚基类 Base 的构造函数,使得 x=0,然后执行类 Derived1 的构造函数使得 x=10,再执行类 Derived2 的构造函数,使得 x=20。最后输出 x 的值为20。
转载请注明原文地址:https://www.kaotiyun.com/show/xNjp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
若x,i,j和k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为()。
有以下程序:#includemain(){inti=3,j=5,*p=&i,*q=&j,**r;r=&q;i++;(*q)++;printf(’’%d,%d,%d,%d,%d\n’’,i,j,*P,*q,**r);}执行后的输出结果是(
有以下程序:#includemain(){intx;scanf(“%d“,&x);if(x
下列关于线性链表的描述中,正确的是()。Ⅰ、只含有一个指针域来存放下一个元素地址Ⅱ、指针域中的指针用于指向该结点的前一个或后一个结点(即前件或后件)Ⅲ、结点由两部分组成:数据域和指针域。
设有定义:struetcomplex{intreal,unreal;}data1={1,8},data2;则以下赋值语句中错误的是()。
有以下程序#includetypedefstruct{intb,p;}A;voidf(Ac)/*注意:c是结构变量名*/{intj;c.b+=1;c.p+=2;}main(){inti;Aa={1
结构化程序设计的3种结构是()。
给定程序modil.c的主函数中,将a、b、c三个结点链成一个单向链表,并给各结点的数据域赋值,函数fun()的作用是:累加链表结点数据域中的数据作为函数值返回。请改正函数fun中指定部位的错误,使它能得出正确的结果。注意:不要改动main函数,不得增
给定程序MODll.C中函数fun的功能是:从低位开始取出长整型变量S中偶数位上的数,依次构成一个新数放在t中。高位仍在高位,低位仍在低位。例如,当S中的数为:7654321时,t中的数为:642。请改正程序中的错误,使它能得出正确的结
随机试题
2016年该市本级完成财政一般预算支出49.86亿元,比上年增支16.79亿元,增长50.8%。2016年该市上划中央收入同比约增长了()。
Isthereadrycleaningserviceinthishotel?Ineedtogetmysuit______.
下列哪一项不是慢性输卵管积水声像图表现
与酶活性相关性小的金属离子是
发包方在收到竣工结算文件后逾期未答复的,( )。
一般而言,在一个主权国家内,法律适用于主权管理范围所及的全部领土,还包括延伸意义的领土。()
近几年来,报刊征订强行摊派之风年年刮,一年甚于一年,一些上级部门凭借手中的职权,把负担压给基层,把好处留给自己。最能准确复述这段话主要意思的是( )。
为了使文本框同时具有垂直和水平滚动条,应先把MultiLine属性设置为True,然后再把ScrollBars属性设置为()。
Whatisthepassagemainlyabout?
Atthatmoment,withthecrowdwatchingme,Iwasnotafraidintheordinarysense,asI________ifI________alone.
最新回复
(
0
)