首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class Base1{ public: Base1(){ } ~Base1(){ cout
有如下程序: #include using namespace std; class Base1{ public: Base1(){ } ~Base1(){ cout
admin
2015-07-22
40
问题
有如下程序:
#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/XANp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列程序中画线处应填入的语句是classBase{public:voidfun(){cout<<"Baseoffun"<<end1;}};
下列SQL语句中,用于修改表结构的是
如果类中的一个成员函数的定义实现在类内,则该函数系统自动默认为该类的【】函数。
定义如下枚举类型:enum{Monday,Tuesday,Wednesday,Thrusday,Friday=2};则下列语句正确的是()。
下列程序在输入m后,求满足条件“n!<=m<=(n+1)!”的值n,请将程序补充完整。#include<iostream>usingnamespacestd;intmain(){intn,m,jc
有如下函数模板定义:template<typenameT1,typenameT2,typenameT3>T2plus(T1t1,T3t3){returnt1+t3;}
在公有派生情况下,有关派生类对象和基类对象的关系,下列叙述不正确的是
在E.R图中,图形包括矩形框、菱形框、椭圆框。其中表示实体联系的是【】框。
以下对模板的说明,正确的是()。
用树型结构表示实体类型及实体间联系的数据模型称为【】。
随机试题
试述格拉古兄弟改革的内容和意义。(北京师范大学1999年世界上古史真题)
对支气管具有直接作用的药物是能够与痰液中黏蛋白发生直接作用产生祛痰作用的药物是
根据《节约能源法》的规定,国家实施的能源发展战略是()。
工程项目风险识别的方法中,()是指访问有经验的项目参与者有关当事人或专题事务专家可以识别风险。
工业生产项目,须()后,并形成生产能力,能正常生产出产品后,才能进行验收。
相对记载事项未在票据上记载的,票据无效。()
盘盈固定资产应通过“待处理财产损溢”科目核算,其净收益计入营业外收入。()
【2016年潍坊市寒亭区】新课程提出了“三维”目标:知识与技能、______、情感态度与价值观。
关于人事行政的作用,下列论述正确的是()。
—Whatdidyourparentsthinkaboutyourdecision?—Theyalwaysletmedo______IthinkIshould.
最新回复
(
0
)