首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
若有以下程序:# include <iostream>using namespace std;class Base{public: Base ( ) { x=0; } int x;};class Derived1 :
若有以下程序:# include <iostream>using namespace std;class Base{public: Base ( ) { x=0; } int x;};class Derived1 :
admin
2010-12-16
108
问题
若有以下程序:# include <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<<end1; return 0;} 该程序运行后的输出结果是
选项
A、10
B、20
C、30
D、0
答案
B
解析
本题考核虚基类。本题中,虽然Derived1和Derived2都是由共同的基类 x派生而来的,但由于引入了虚基类,使得它们分别对应基类的不同副本。这时数据成员x只存在一份拷贝,不论在类Derived1修改,还是在类Derived2中修改,都是直接对这惟一拷贝进行操作。本题程序执行语句“Derived obj”时,就会先调用虚基类 Base的构造函数,使得x=0,然后执行类Derived1的构造函数使得x=10,再执行类Derived2的构造函数,使得x=20。最后输出x的值为20。
转载请注明原文地址:https://kaotiyun.com/show/f1Vp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间的联系是( )。
下面描述正确的是()。
已知下列函数定义:fun(int*b,intc,intd){intk;for(k=0;k
若有定义语句:doublea,*p=&a;以下叙述中错误的是()。
若有chars[3][3]={"AAA","BBB","CCC"};说明语句,则与它等价的语句是()。
下列给定程序中,函数fun的功能是:将s所指字符串中位于奇数位置的字符或ASCII码值为偶数的字符依次放入t所指数组中。例如,字符串中的数据为“AABBCCDDEEFF”,则输出应当是“ABBCDDEFF”。请改正程序中的错误,使它能得出正确的结
给定程序中,函数fun的功能是:求出形参SS所指字符串数组中最长字符串的长度,将其余字符串右边用字符木补齐,使其与最长的字符串等长。SS所指字符串数组中共有M个字符串,且串长
以下结构体类型说明和变量定义中正确的是()。
C语言规定,函数返回值的类型是()。
若执行语句:cout<<setfill(’*’)<<setw(10)<<setfill(’#’)<<left<<123<<"OK"<<end1后将输出
随机试题
A、Ifwewakefastsleepingpeople,theywillfeelannoyed.B、IfwewakepeopleduringtheREM,theywillfeeltired.C、Onlydrea
反向间接血凝试验,如出现凝集,则反映
A.大便臭秽,夹有不消化食物B.大便稀溏,臭气少C.泄泻如水,小便不利D.黎明前腹泻E.里急后重,下利脓血食滞胃脘证可见()
女性,40岁,左肾盂结石切开取石术后,置肾盂造口管引流,其护理下列哪项不妥:
《危险废物填埋污染控制标准》(GB18598—2001)中规定,危险废物填埋场场址距地表水域的距离不应小于()m。
在下列对净现值与折现率关系的描述中,正确的是( )。
根据《建设工程施工合同(示范文本)》GF-2017-0201,关于保修期内修复费用承担的说法,正确的有()。
关于资产组的减值测试,正确的处理方法包括()。
己知“装”字的拼音输入码是zhuang,而“大”字的拼音输入码是da,则存储它们的内码分别需要的字节个数是
A、I’dliketolookatthatshirt.B、Yes,youcan.C、No,youcan’t.A听力原文:CanIhelpyou?意为:我能为您做点什么吗?表示相同含义的还有:WhatcanIdofor
最新回复
(
0
)