首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class Base{ int m; public: Base(){ cout
有如下程序: #include using namespace std; class Base{ int m; public: Base(){ cout
admin
2019-07-10
76
问题
有如下程序:
#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://www.kaotiyun.com/show/6W8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列关于成员函数特征的描述中,错误的是()。
下列关于虚函数的说明中,正确的是()。
当派生类中有和基类相同名字的成员时,派生类的同名成员会【】基类的成员。
在派生类中重新定义虚函数时,除了()方面,其他方面都必须与基类中相应的虚函数保持一致。
有下列二叉树,对此二叉树前序遍历的结果为()。
不能重载的运算符是( )。
下列叙述中正确的是
一棵二叉树的中序遍历结果为DBEAFC,前序遍历结果为ABDECF,则后序遍历结果为______。
两个或两个以上模块之间联系的紧密程度称为()。
耦会和内聚是评价模块独立性的两个主要标准,其中______反映了模块内各成分之间的联系。
随机试题
诊断应为( )。应采取的治疗措施应为( )。
关于破产清偿顺序,下列说法错误的是:()
《建设工程监理规范》规定,监理资料的管理应由( )。
抓铲挖掘机可以挖掘停机面以上及以下的掌子,水利水电工程中常用于开挖()土。
下列项目中,企业通过其他应收款核算的有()。
(2019年)根据证券法律制度的规定,在科创板申请公开发行股票并上市的公司,作出同意或者不同意股票公开发行并上市的审核意见的是()。
国际信用的主要形式有()。
下面属于五果的是()。
某学生既想参加演讲比赛,锻炼自己,又害怕讲不好,被人讥笑。这时他面临的心理冲突是()。
Completetheformbelow.WriteNOMORETHANTWOWORDSAND/ORANUMBERforeachanswer.REQUESTFORCOMMAERCIALLEASEPr
最新回复
(
0
)