首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下类声明: 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
61
问题
有如下类声明:
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全国计算机二级
相关试题推荐
对基类数据成员的初始化必须在派生类构造函数中的______处执行。
有如下程序:#include<iostream>usingnamespacestd;intmain(){cout.fill(’*’);cout.width(6);cout.fill(
以下程序的输出结果是_____。#include<iostream.h>unsignedfun(unsignednum){unsignedk=1;do{k*=num%10;num/=10;}while(nu
设有定义intx;floaty;,则10+x+y值的数据类型是
在长度为n的顺序存储的线性表中插入一个元素,最坏情况下需要移动表中______个元素。
定义如下枚举类型:enum{Monday,Tuesday,Wednesday,Thrusday,Friday=2};则下列语句正确的是()。
下列叙述中正确的是
在一个容量为25的循环队列中,若头指针front=15,尾指针rear=6,则该循环队列中共有【 】个元素。
下列有关数据库的描述,正确的是
在程序设计阶段应该采取______和逐步求精的方法,把一个模块的功能逐步分解,细化为一系列具体的步骤,继而用某种程序设计语言写成程序。
随机试题
因汇率变动而使外汇持有者受损的风险属于金融工具的()风险。
在Windows中要更改当前计算机的日期和时间。可以()。
下列《季氏将伐颛臾》一文运用的论据中,属于历史材料的是()
遗传因素引起的错颌畸形可表现为
如果打印机的价格上涨,则对墨盒的需求会增加。()
【2014.河北石家庄】()是我国中小学教育实践中普遍采取的一种基本教学模式。
生态移民是指为了保护某个地区特殊的生态或让某个地区的生态得到修复而进行的移民,也指因自然环境恶劣,不具备就地扶贫的条件而将当地人整体迁出的移民。下列属于生态移民的是()。
(2012年第9题)19世纪40年代以后,资本一帝国主义势力一次又一次地发动对中国的侵略战争,妄图瓜分中国、灭亡中国。但是,帝国主义列强并没有能够实现他们的这一图谋,其根本原因是
Abiteofacookiecontainingpeanutscouldcausetheairwaytoconstrictfatally.Sharingatoywithanotherchildwhohadearl
InhislecturesattheLyceum,aschoolthatremainedforcenturiesoneofthegreatcentersoflearninginGreece,Aristotlede
最新回复
(
0
)