首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class Base{ int m; public: Base(){ cout
有如下程序: #include using namespace std; class Base{ int m; public: Base(){ cout
admin
2015-07-22
28
问题
有如下程序:
#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://jikaoti.com/ti/XzE0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
汇编程序的功能是将汇编语言所编写的源程序翻译成由【】组成的目标程序。
下面程序的输出是()。#defineN3#defineM(n)((N+1)*n)#include<iostrearn.h>voidmain(){intz=2*(N+M(5+1));cout<<z<<end1;}
在单项链表中删除一个指定结点的后继的时间复杂度为______。
以/*开始,*/结束,在/*和*/之间的部分即为【】。
按“先进后出”原则组织数据的数据结构是【】。
在32位计算机中,一个int型数据所占用的内存长度为()字节。
在C++语言程序中,对象之间的相互通信通过
非成员函数应声明为类的【 】函数才能访问这个类的private成员。
operator是运算符重载时必须使用的关键字,它和被重载的运算符连在一起,作为运算符函数的专用函数名,务必把该函数说明为【】的。
关于在调用模板函数时实参的使用,下列表述中正确的是
随机试题
以下哪一项不是DiGeorge综合征的特点
已知函数则f(0)=________.
关于男性尿道的耻骨前弯,错误的是()
A.降钙素B.血管升压素C.胰高血糖素D.生长抑素胰岛D细胞分泌
(操作员:张主管;账套:103账套;操作日期:2014年1月1日)输入下列科目的期初余额。交易性金融资产:10000
在财务业绩定量评价指标中,衡量企业资产质量的基本指标包括()。
导游人员在向境外旅游者提供服务的过程中要做好调查研究工作,了解客源国和旅游者的有关情况,是因为()。
在重复学习时,要掌握好“度”,这就是适当的超额学习,如果一名学生背诵一篇短文,背了10遍刚好能回忆起来,那么他应该再背()遍。
某日,一小区居民李某发现厨房天花板上不断有水渗出,沿着墙壁流下,其到楼上查看,发现房门紧闭,屋内无人,李某遂拨打110报警。派出所民警张某、方某接到处警指令后赶到现场,以下处置措施正确的有:
______heneededmoneyforanewcar,hedecidednottoborrowitfromthebank.
最新回复
(
0
)