首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
若有以下程序: #include <iostream> using namespace std; class Base { public: Base() { x=
若有以下程序: #include <iostream> using namespace std; class Base { public: Base() { x=
admin
2009-02-15
39
问题
若有以下程序: #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语言中规定,程序中各函数之间()。
在三级模式之间引入两层映像,其主要功能之一是()。
有以下程序#includeintm1(intx,inty){returnx
下列给定程序中函数fun的功能是:用递归算法求形参a的平方根。求甲方根的迭代公式如下:例如,a为2时,平方根值为1.414214。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!试题
给定程序modi1.c的主函数中,将a、b、c三个结点链成一个单向链表,并给各结点的数据域赋值,函数fun()的作用是:累加链表结点数据域中的数据作为函数值返回。请改正函数fun中指定部位的错误,使它能得出正确的结果。注意:不要改动ma
下面对软件特点描述错误的是
下列方法中,属于白盒法设计测试用例的方法的是()。
以下不能将S所指字符串正确复制到t所指存储空间的是
交换两个变量的值,不允许用临时变量,应该使用下列()位运算符。
随机试题
TheBritishSummerBritainiswellknownforitsrainyclimate.Peoplejokethateveninthesummertimethecountryneverge
A、蛋白质分解产物B、盐酸C、脂酸钠D、脂肪E、糖类引起促胰液素分泌的最强因素是
有关泡性角结膜炎特点的叙述中,错误的是
A.1~2mmB.2~3mmC.2~4mmD.0.5mm以下E.5~10mm斜片厚度为()
当建筑场地的上部土层较弱、承载力较小,不宜在天然地基上做浅基础时,宜采用()。
电力系统内部过电压与()等因素有关。
以下情形中,需要及时修订应急预案的包括()。
下列资产的折旧费用应计入当期损益的有()。
Thecritic’sassessmentofthebookisthatitisbeautifullywritten.
A、Qualityisanimportantpartofthepriceofcosmeticproducts.B、Qualityisnotakeyfactorforthepriceofcosmeticproduc
最新回复
(
0
)