首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #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
45
问题
有如下程序:
#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全国计算机二级
相关试题推荐
对于语句cout
下列循环语句中有语法错误的是()。
假定MyClass为一个类,则该类的拷贝初始化构造函数的声明语句为()。
某二叉树中有n个度为2的结点,则该二叉树中的叶子结点数为
用树形结构表示实体之间联系的模型是()。
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为:m=-10n=-10p=0q=-10z=A注意:错误的语句在//******error******的下面,修改该语句即可。#
数据库系统的三级模式不包括( )。
在软件开发中,需求分析阶段产生的主要文档是()。
下列选项中不属于结构化程序设计原则的是()。
下列选项中不属于结构化程序设计原则的是()。
随机试题
A公司以30万元的价格向B公司订购一台机床。根据合同约定,A公司以银行承兑汇票支付价款。2010年3月1日,A公司签发一张以B公司为收款人、金额为30万元的银行承兑汇票(承兑银行已经签章),到期日为2010年9月1日。A公司将该汇票交给采购经理甲,拟由其携
彩色多普勒血流成像仪性能评价指标哪项是不对的
A.麻子仁丸B.更衣丸C.三物备急丸D.润肠丸E.五仁丸
下列不属于表证的表现是
资产、负债、所有者权益等会计要素指标,主要通过()进行核算。
一般情况下,横道图能反映出工作的()。
某公司目前的资本包括每股面值1元的普通股800万股和利率为10%的3000万元的债务。该公司拟投产一新产品,该项目需投资4000万元,预计每年可增加息税前利润400万元。该项目的备选筹资方案有两个:(1)按11%的利率发行债券;(2)按每股20元的价格
计算机网络向用户提供的最重要的功能是连通性和共享。()
下列属于警告处罚的适用对象的有()。
A(Nothing)B(but)twochairsC(are)D(in)theroom.
最新回复
(
0
)