首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class Base{ int m; public: Base(){ cout
有如下程序: #include using namespace std; class Base{ int m; public: Base(){ cout
admin
2021-06-10
30
问题
有如下程序:
#include
using namespace std;
class Base{
int m;
public:
Base(){ cout<<"B1"; }
Base(int m1): m(m1){ cout<<"B2"; }
};
class Mid1: virtual public Base{ };
class Mid2: virtual public Base{ };
class Derived: public Mid2, public Mid1{
public:
Derived(int n): Base(n){ cout<<"D"; }
};
int main(){
Derived obj(5);
return 0;
}
运行上述程序的输出结果是
选项
A、B1B1D
B、B1B2D
C、B1D
D、B2D
答案
D
解析
虚继承中,无论虚基类出现在继承层次中的任何地方,总是在构造非虚基类之前构造虚基类;程序中首先构造虚基类Base,调用Base的构造函数Base(intm1),输出"B2";然后构造非虚基类,按照Derived的派生列表顺序,首先构造Mid2部分,忽略Mid2构造函数初始化列表中Base的初始化式,再构造Mid1部分,同样忽略Base的初始化式,最后构造Derived部分,执行函数体,输出"D";整个程序结果为:"B2D";答案为D。
转载请注明原文地址:https://kaotiyun.com/show/2yfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列叙述中正确的是()。
Sample是一个类,执行下面语句后,调用Sample类的构造函数的次数是,()。Samplea[2],*P=newSample;
有如下程序:#include<iostream>usingnamespacestd;classBase{public:Base(intx=0){cout<<x;}};class
深度为5的完全二叉树的结点数不可能是
在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。其中数据独立性最高的阶段是()。
下列有关运算符重载的叙述中,正确的是()。
下列符号中可以用做C++标识符的是()。
数据库管理系统是()。
在数据库系统中,用户所见的数据模式为()。
数据管理技术发展的三个阶段中,()没有专门的软件对数据进行管理。I.人工管理阶段II.文件系统阶段III.数据库阶段
随机试题
深冷装置燃机()低不影响燃机启动。
能如是,谁不欲告生以其道?道:
MostAmericansdon’tliketogetadvicefrommembersoftheirfamily.Whentheyneedadvice,theydon’tusually【C1】______people
能引起急性肾小管坏死的原因是
中国证监会应当制定证券评级机构的自律准则和执业规范,对违反自律准则和执业规范的行为给予行政处分。( )
流动性缺口率需要分别计算本外币和外币口径数据,不得低于()。
贸易技术壁垒是指()。
中国公民不论是在国内还是在国外,都受本国法律的约束,而对在该国领域内的外国人则不适用。这体现了法律的空间效力。()
现阶段,我国城乡之间在生产力水平、就业结构、收入水平等方面都存在着很大的差别,农村经济的现代化、社会化都还有一个漫长的过程,广大农村在近期尚不具备国家统一立法、强制实行社会保险制度的条件,不能照搬城乡企业的办法。广大农民仍应坚持家庭养老、邻里互助等好的传统
Ifideascansymbolizethespiritofanage,thenthesymboloftherecentappliedlinguisticageisundoubtedly"languageacqui
最新回复
(
0
)