首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class AA{ public: AA(){ cout
有如下程序: #include using namespace std; class AA{ public: AA(){ cout
admin
2020-06-29
74
问题
有如下程序:
#include
using namespace std;
class AA{
public:
AA(){ cout<<"A"; }
~AA(){ cout<<"a"; }
};
class BB: public AA{
AA aa;
public:
BB(){ cout<<"B"; }
~BB(){ cout<<"b"; }
};
int main(){
BB bb;
return 0;
}
运行这个程序的输出是
选项
A、AABaab
B、AABbaa
C、BAAaab
D、BAAbaa
答案
B
解析
首先,构造函数的工作过程:1、派生类的构造函数在执行函数体之前调用基类的构造函数初始化基类;2、在执行函数体之前根据声明次序初始化自己的成员;3、执行自身函数体。所以程序中在创建BB对象时,首先调用AA的构造函数,输出"A",然后初始化类BB中的成员aa,调用AA的构造函数,输出"A",最后执行函数体,输出"B";
程序执行结束时,系统会自动调用类的析构函数,析构函数工作过程:1、执行析构函数的函数体;2、如果该类中拥有类对象成员,且类对象有析构函数,则以类对象成员声明次序的相反顺序调用其析构函数,销毁类对象成员;3、按原来构造顺序的相反顺序向上依次调用基类的析构函数。所以程序运行结束时,首先调用BB的析构函数并执行函数体,输出"b";然后调用aa的析构函数,销毁aa成员,输出"a";最后调用基类AA的析构函数,输出"a";综上所述,程序运行的输出是:"AABbaa";答案为B。
转载请注明原文地址:https://www.kaotiyun.com/show/xa8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
程序设计方法要求在程序设计过程中
软件开发的结构生命周期法的基本假定是认为软件需求能做到
软件需求规格说明书应具有完整性、无歧义性、正确性、可验证性、可修改性等特性,其中最重要的是【 】。
数据库设计包括两个方面的设计内容,它们是
下列有关类继承的叙述中,错误的是()。
下列描述中,不属于面向对象思想主要特征的是()。
下列运算符函数中肯定不属于类FunNumber的成员函数的是()。
要将前缀运算符--重载为Incr的非成员函数,下列原型中,可作为该重载函数原型的是
对下列二树进行前序遍历的结果为()。
随机试题
Theeditoraskedhisjournalistsnotto____________anydetailsintheirreportsoftheaccident.
A.溶血性链球菌 B.金黄色葡萄球菌 C.变形杆菌 D.大肠杆菌 E.铜绿假单胞菌痈的致病菌是
微需氧菌兼性厌氧菌
在蛋白质生物合成中催化氨基酸之间肽键形成的酶是
五倍子
项目法人(建设单位)应组织()进行设计交底。
类脑计算技术总体分为三个层次:结构层次模仿脑、器件层次逼近脑、智能层次超越脑。其中,结构层次模仿脑是指将大脑作为一个物质和生理对象进行解析,获得基本单元(各类神经元和神经突触等)的功能及其连接关系(网络结构);器件层次逼近脑是指研制能够模拟神经元和神经突触
从众:指个人的观念和行为由于群众的引导或压力,而向多数人相一致的方向变化的现象。以下不是从众现象的有( )。
Completethefollowinginformation.
Afterhavingassuredtheirreturnjourney,thewriterandhiscompanioncouldconcentrateoncollectingandfilmanimals.Decidi
最新回复
(
0
)