首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class Base1{ public: Base1(){ } ~Base1(){ cout
有如下程序: #include using namespace std; class Base1{ public: Base1(){ } ~Base1(){ cout
admin
2021-09-05
54
问题
有如下程序:
#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://www.kaotiyun.com/show/Zb5p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下类声明:c1assFoo{intbar;);则Foo类的成员bar是()。
下列关于模板的叙述中,错误的是()。
下面不能作为结构化方法软件需求分析工具的是()。
用树形结构表示实体之间联系的模型是()。
对如下二叉树进行后序遍历的结果为
有两个关系R和S如下:则由关系R得到关系S的操作是()。
已知表达式++a中的“++”是作为成员函数重载的运算符,则与++a等效的运算符函数调用形式为()。
下面不能作为结构化方法软件需求分析工具的是()。
下列描述中,不属于面向对象思想主要特征的是()。
随机试题
根据《中华人民共和国药品管理法实施条例》,药品被抽验单位无正当理由,拒绝抽查检验,国务院药品监督管理部门和被抽验单位所在地省级人民政府药品监督管理部门可以宣布
基托蜡是临床上最常用的蜡材,国内商品名为红蜡片具有下列哪项特点
建设项目防治污染的设施,必须与主体工程同时设计,同时施工,同时投产使用。防治污染的设施必须经______验收合格后,该建设项目方可投入生产或者使用。
确定建设工程施工阶段进度控制目标时,首先应进行的工作是()。
在工程网络计划中,关键线路是指()的线路。
我国实行邮政管制的必要性主要在于()。
下列有关PM2.5(细颗粒物)的表述正确的是()。
以目标为中心而展开,针对20世纪初形成并流行的常模参照测验的不足而提出的评价模式是()。
公路客运方面:10月5日共发送客车3546车次,发送旅客5.45万人次;抵达客车1472车次,抵达旅客1.88万人次。民航方面:10月5日共发送航班236班次,发送旅客3.25万人次;抵达航班233班次,抵达旅客2.83万人次。根据所给材
软件是一种(9)的产品。
最新回复
(
0
)