首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class Base1{ public: Base1(){ } ~Base1(){ cout
有如下程序: #include using namespace std; class Base1{ public: Base1(){ } ~Base1(){ cout
admin
2015-07-22
17
问题
有如下程序:
#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/1yNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列打开文件的表达式中,错误的是
若有以下程序:#include<iostream>usingnamespacestd;classBase{public:Base(){x=0;}
有如下类声明: class SAMPLE { int n; public: SAMPLE(int i=0):n(i) { } void setValue(int nO); }; 下
有如下程序: int x=3; do { x-=2; cout<<x; } while(!(--x)); 执行这个程序的输出结果是
对下列二叉树进行中序遍历的结果为【 】。
下列语句中错误的是( )。
算法的时间复杂度是指()。
类MyClass的定义如下:classMyClass{public:MyClass(){}MyClass(inti){value=newint(i);}i
设有下列二叉树: 对此二叉树前序遍历的结果为
随机试题
A.千金苇茎汤B.犀黄丸C.A和B均宜D.A和B均否E.桔梗杏仁煎
关于估价依据选取或应用的说法,正确的是()。
建设工程人工、材料、机械等实物消耗量的计算依据包括( )。
下列关于资产评估目的的表述正确的有()。
下列各项中,不会引起事业单位的事业结余发生增减变动的是()。
ThetownIliveinisabouttoputcamerasatalltrafficlightstocatchpeoplewhorunredlights.It【C1】________meofhowman
中共中央政治局2007年7月26日召开会议,分析研究当前经济形势和经济工作。会议提出,要坚持把遏制经济增长由偏快转为______作为当前宏观调控的首要任务,着力控制高耗能、高排放和产能过剩行业盲目扩张,努力缓解______增长过快、信贷投放过多、外贸顺差过
A、条件(1)充分,但条件(2)不充分B、条件(2)充分,但条件(1)不充分C、条件(1)和(2)单独都不充分,但条件(1)和条件(2)联合起来充分D、条件(1)充分,条件(2)也充分E、条件(1)和条件(2)单独都不充分,条件(1)和条件(2)联
Achildlearningtoplaythepianowillnotsucceedunlessthechildhasaninstrumentathomeonwhichtopractice.However,go
Completethetablebelow.WriteONEWORDONLYforeachanswer.
最新回复
(
0
)