首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class Base1{ public: Base1(){ } ~Base1(){ cout
有如下程序: #include using namespace std; class Base1{ public: Base1(){ } ~Base1(){ cout
admin
2021-07-02
27
问题
有如下程序:
#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://jikaoti.com/ti/9uh0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面不属于软件设计阶段任务的是()。
软件系统总体结构图的作用是
下列符号中不属于C++关键字的是()。
有如下程序#inc1ude<iostream>usingnamespacestd;classA{public:virtualvoidfunc1(){cout<"A1";}voidfu
将运算符重载为类成员函数时,其参数表中没有参数,说明该运算符是()。
有如下程序段:inti=1;while(1){i++;if(i==10)break;if(i%2==0)cout<<’*’;}执行这个程序段输出字符*的个数是()。
下列描述中,不符合良好程序设计风格要求的是()。
软件设计中模块划分应遵循的准则是()。
为类Matrix重载下列运算符时,只能作为Matrix类成员函数重载的运算符是()。
软件设计中划分模块的一个准则是()。
随机试题
下列关于牙种植术的适应证的说法中,不正确的是
牙移植最易发生的排斥反应是
早产儿,胎龄32周。出生时体重1400g,生后5小时出现进行性呼吸困难,入院时呼吸不规则,经皮氧饱和度为75%。应先进行哪一项紧急治疗
一日凌晨4时左右,在西城区招待所住宿的张三突然被楼下“砰”的一声巨响惊醒,他透过窗玻璃看到在他对面十来米远的西城区百货大楼下,雨中有几个黑影正用铁棒撬一家商店的铝合金卷闸门。张三当即唤醒了同室的李四,后两人一同敲开了2楼值班室的门,并向旅馆老板讲述了情况。
在技术建议书的评价中,咨询公司的资历和经验占()。
下列有关城市总体布局的表述中,不正确的是()。
下列关于外商投资企业经常项目和资本项目外汇管理的说法中,正确的有()。
订货费不包括()。
20世纪60年代以来,世界上最有影响的教育思潮是()
Scientistsaroundtheworldareracingtolearnhowtorapidlydiagnose,treatandstopthespreadofanew,deadlydisease.SAR
最新回复
(
0
)