首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class Base{ int m; public: Base(){ cout
有如下程序: #include using namespace std; class Base{ int m; public: Base(){ cout
admin
2020-07-23
33
问题
有如下程序:
#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(int m1),输出"B2";然后构造非虚基类,按照Derived的派生列表顺序,首先构造Mid2部分,忽略Mid2构造函数初始化列表中Base的初始化式,再构造Mid1部分,同样忽略Base的初始化式,最后构造Derived部分,执行函数体,输出"D";整个程序结果为:"B2D";答案为D。
转载请注明原文地址:https://kaotiyun.com/show/8Lyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列运算符中,不能作为成员函数重载的是
在公有继承的情况下,在派生类中能够访问的基类成员包括
当数据库中数据总体逻辑结构发生变化,而应用程序不受影响,称为数据的
模板对类型的参数化提供了很好的支持,因此()。
下列叙述中正确的是
在关系数据库中,用来表示实体间联系的是
已知表达式--a中的"--"是作为成员函数重载的运算符,则与--a等效的运算符函数调用形式为
若要对类Value中重载的类型转换运算符long进行声明,下列选项中正确的是
在关系模型中,每一个二维表称为一个
软件生命周期可分为定义阶段、开发阶段和维护阶段,下面不属于开发阶段任务的是
随机试题
引发爆炸的条件是:爆炸品(含还原剂与氧化剂在内)或可燃物与空气的混合物(在爆限之内)和引爆源同时存在相互作用。下列属于防爆的基本原则是__________。
我国坚持独立自主、自力更生和对外开放的方针,进行社会主义现代化建设,其哲学依据是()
我国文学史上现存诗歌数量最多的诗人是()。
A.立即封盖伤口,包扎固定B.清创缝合伤口,并做闭式引流C.气管内插管,辅助呼吸D.气管切开,充分供氧男,20岁,左胸刺伤后,呼吸困难,脉搏102次/分,可听到气体进出胸膜腔的响声,首先应采取的措施是
A.清蛋白B.α1球蛋白C.α2球蛋白D.γ球蛋白E.β球蛋白对血浆胶体总渗透压贡献最大的蛋白质是
石决明栝楼
城市居住区用地平衡控制指标中除有住宅用地、道路用地和公共绿地外,还应包含下列哪项用地?[2011-21]
下列做法最不利于培养学生创造性的是()
相对于传统学术研究,教育行动研究的突出特点是()。
下列关于当前我国工业的说法正确的是()。
最新回复
(
0
)