首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: #included<iostream> using namespace std; class Base { public: Base( ) { x=0; }
有以下程序: #included<iostream> using namespace std; class Base { public: Base( ) { x=0; }
admin
2013-05-30
23
问题
有以下程序:
#included<iostream>
using namespace std;
class Base
{
public:
Base( )
{
x=0;
}
int x;
};
class Derived1: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
解析
本题考核虚基类。本题中,虽然Derived 1和Derived 2都是由共同的基类x派生而来的,但由于引入虚基类,使得它们分别对应基类的不同副本。这时数据成员x只存在一份拷贝,不论在类Derired 1中修改,还是在类Derived 2中修改,都是直接对这唯一拷贝进行操作。本题程序执行语句“Derived obj;”时,就会先调用虚基类Base的构造函数,使得x=0,然后执行类Derived 1的构造函数使得x=10,再执行类Derived 2的构造函数,使得x=20。最后输出x的值为20。
转载请注明原文地址:https://jikaoti.com/ti/rbE0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列关于运算符重载的叙述中,正确的是()。
有如下说明inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则数值为9的表达式是()。
下列程序的输出结果是【】。#include<iostream>usingnamespacestd;classbase{public:intn;base(intx){n=x;}
对基类数据成员的初始化必须派生类的构造函数中的【】处执行。
对于语句cin>>x;中的各个组成部分,下列叙述中错误的是()。
下列叙述中正确的是()。
以下函数模板max()的功能是:返回数组a中最大元素的值。请将横线处缺失部分补充完整。template<typenameT>Tmax(Ta[],intn){Tm=a[0];for(inti=1;i<n;i++)if(a[i]>
一个抽象类的派生类可以实例化的必需条件是实现了所有的【】。
编译过程一般分成5个阶段【】、语法分析、错误检查、代码优化和目标代码生成。
模板使我们可以用一个代码段指定一组相关函数(称为______)或一组相关类(称为______。
随机试题
熔化极氩弧焊时,选择的焊接电流值不能超过“临界电流”,否则熔滴将出现粗滴过渡,使焊缝
坚持独立自主的和平外交政策的首要任务是【】
女孩,6岁,突发腹痛11小时,以脐周痛为主,腹痛呈持续性,逐渐加重。发热39℃,排正常大便1次。查体:患儿腹胀,全腹有明显压痛及肌紧张,移动性浊音(+),肠鸣音消失。血常规:WBC19×109/L,中性粒细胞0.9。此患儿最适当的处理应为
患者,女性,28岁。哺乳期。左乳房胀痛、发热2天。查体:T39.4℃,P106次/分。左乳房外上象限6cm×4cm范围红肿,有明显压痛和波动感。急行切开引流术。术后抗感染治疗针对的主要致病菌是()
患者,男,38岁,因车祸后大出血导致休克。入院后测脉搏120次/分,血压75/60mmHg。护士为其安置体位时,需将其头胸和下肢分别抬高
银行卡分为信用卡和借记卡,其区别有( )。
下列各项中,应计入销售费用的有()。
下列关于潜在普通股稀释性的判断,正确的有()。
社会主义核心价值观为人们确定和实现人生价值提供了基本遵循。人生价值评价主要是看一个人的人生活动是否符合社会的客观规律,其评价的根本尺度是()
阅读下述程序段:y=-1;if(x!=0)if(x>0)y=1;elsey=0;该程序段所描述的数学关系是()。
最新回复
(
0
)