首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class Base1{ public: Base1(){ } ~Base1(){ cout
有如下程序: #include using namespace std; class Base1{ public: Base1(){ } ~Base1(){ cout
admin
2021-07-02
33
问题
有如下程序:
#include
using namespace std;
class Base1{
public:
Base1(){ }
~Base1(){ cout<<"b1"; }
};
class Base2{
public:
Base2(){ }
~Base2(){ cout<<"b2"; }
};
class Derived: public Base2,public Base1{
public:
Derived(){ }
~Derived(){ cout<<’d’; }
};
int main(){
Derived obj;
return 0;
}
运行这个程序的输出是
选项
A、b1b2d
B、b2b1d
C、db1b2
D、db2b1
答案
C
解析
派生类构造函数都是先调用基类构造函数,再根据声明次序定义数据成员,另外对于多继承,派生类的构造函数初始化列表中,基类构造函数是按照基类在派生类的派生列表中出现的次序调用的;由于Derived类的派生列表中,Base2在前,所以应该先调用Base2的构造函数,再调用Base1的构造函数;销毁派生类对象时,总是按照构造函数运行次序的相反顺序调用析构函数,首先运行派生类析构函数,然后按继承层次依次向上调用各基类函数;所以Derived对象销毁时,首先调用Derived的析构函数,接着调用Base1的析构函数,最后调用Base2的析构函数;输出结果为:"db1b2",答案为C。
转载请注明原文地址:https://kaotiyun.com/show/vefp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列关于模板的叙述中,错误的是()。
已知类IMS中两个成员函数的声明为“voidlisten()const;”与“voidspeak();”,另有两个对象的定义为“IMSobj1;”与“constIMSobj2;”,则下列语句中,产生编译错误的是()。
下列选项中,与实现运行时多态性无关的是()。
已知函数FA调用FB,若要把这两个函数定义在同一个文件中,则()。
如需要向一个二进制文件尾部添加数据,则该文件的打开方式为()。
在类中重载赋值运算符时,应将其声明为类的()。
在学生管理的关系数据库中,存取一个学生信息的数据单位是()。
下列关于函数参数的叙述中,正确的是()。
两个或两个以上模块之间关联的紧密程度称为()。
随机试题
被评估对象为甲公司的生产线A,该生产线生产能力为每年18000台产品,因市场需求结构发生变化,在未来可使用年限内,每年产量估计要减少5000台左右,每台产品损失利润150元,该生产线尚可继续使用3年,企业所在行业的投资回报率为10%,所得税税率为25%
血清学分型主要用于鉴定
枕骨大孔疝常见病因是
用于支气管哮喘的药物是
起于中焦的经脉是起于目外眦的经脉是
本轮课程改革强调:教学的实质是师生交往,积极互动,共同提高和发展的过程。()
关于道路交通管理的主体表述最准确的是()。
某人要从A市经B市到C市。从A市至B市的列车从早上8点起每30分钟一班,全程行驶1小时;从B市到C市的列车从早上9点起每40分钟一班,全程行驶1小时30分钟。在B市火车站换乘需用时15分钟。如果想在出发当天中午12点前到达C市,问他有几种不同的乘车方式?(
微机同外部世界进行信息交换的工具(设备)是指【 】。
TheNationalWeatherCentre’smostrecentcustomersareWhatconclusionwasreachedabouttheeventualchoiceoflocation?
最新回复
(
0
)