首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下类声明: class Base1{ }; class Base2{ }; class Derived: public Base2,public Base1{ }; 在一个 Derived 对象消亡时,析构函数被调用的顺序
有如下类声明: class Base1{ }; class Base2{ }; class Derived: public Base2,public Base1{ }; 在一个 Derived 对象消亡时,析构函数被调用的顺序
admin
2019-07-10
53
问题
有如下类声明:
class Base1{ };
class Base2{ };
class Derived: public Base2,public Base1{ };
在一个 Derived 对象消亡时,析构函数被调用的顺序是
选项
A、~Derived、~Base1、~Base2
B、~Derived、~Base1、~Base2
C、~Base1、~Base2、~Derived
D、~Base2、~Base1、~Derived
答案
A
解析
C++中,派生类构造函数都是先调用基类构造函数,再根据声明次序定义数据成员,另外对于多继承,派生类的构造函数初始化列表中,基类构造函数是按照基类在派生类的派生列表中出现的次序调用的;而析构函数是按构造函数运行顺序的逆序进行调用的,可知题目中析构函数的调用顺序为:派生类Derived的析构函数,Base1的析构函数,Base2的析构函数;答案为A。
转载请注明原文地址:https://kaotiyun.com/show/WW8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列关于C++函数的说明中,正确的是()。
在inta=10,*p=&a;语句中,p的值是()。
一个类的友元函数能够访问该类的
在任何类中都有三种访问权限的数据成员,这三种权限是public、private和【 】。
派生类构造函数的执行顺序是先执行【】的构造函数,然后执行成员对象的构造函数,最后执行【】的构造函数。
有如下函数模板定义: template<typename T1,int a2,int a3> T1 fun(T1 a1) { return(a1+a2+a3); } 则以下调用中正确的是( )。
数据库DB、数据库系统DBS、数据库管理系统DBMS之间的关系是()。
单个用户使用的数据视图的描述称为()。
下列关于类和对象的叙述中,错误的是()
下列叙述中错误的是
随机试题
患儿,女,26个月。足月产,出生体重3000g,6~7个月还分不清亲人和陌生人,18个月喜欢独自玩耍,不与周围小朋友交往,反复模仿父母讲过的话,24个月出门一定要自己选择路线,否则烦躁不安或拒绝。孤独症儿童行为量表评分为80分。该患儿可考虑诊断为
母体抗体经胎盘进入胎儿循环称为
在应急过程中,人群疏散是减少人员伤亡扩大的关键。在进行人群疏散时,应充分考虑的问题有()。
设备监理工程师在设备形成过程中投资控制的主要任务包括以下()几个方面。
C公司正在研究一项生产能力扩张计划的可行性,需要对资本成本进行估计。估计资本成本的有关资料如下:(1)公司现有长期负债:面值为1000元,票面年利率为12%,每半年付息一次的不可赎回债券;该债券还有5年到期,当前市价为1051.19元;假设发行长期债券时
初中数学新课程教学内容的价值取向。
马克思主义产生于19世纪40年代,是时代的产物,有深刻的社会根源、阶级基础和思想渊源。其阶级基础是()
IP地址中网络号的作用是()。
这点微不足道的小事,也要去麻烦别人吗?
DearSirorMadam,Manythanksforyourletter.Wearegladtohearthatyousawouradvertisementofsilkproducts,andapp
最新回复
(
0
)