首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class AA{ public: AA(){ cout
有如下程序: #include using namespace std; class AA{ public: AA(){ cout
admin
2019-07-10
48
问题
有如下程序:
#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://kaotiyun.com/show/rP8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
若有如下语句#include<iostream.h>voidmain(){intx=3;do{x=x-2;cout
一些重要的程序语言(如C语言和Pascal语言)允许过程的递归调用。而实现递归调用中的存储分配通常用
若Xcs是一个类,该类中具有一个函数体为空的不带参数的构造函数,此构造函数的类外定义为______。
一个队列的初始状态为空。现将元素A,B,C,D,E,F,5,4,3,2,1依次入队,然后再依次退队则元素退队的顺序为______。
在关系数据库中,每一个二维表称为______。
已知数组a中的元素个数为n,下列语句的作用是将下标为i的元素移动到下标为 i-1的单元,其中1≤i<n。例如,当n=4,a中原有数据为1,2,3,4时,则移动后a中元素变为2,3,4,4。请将语句补充完整:for(int i=0;i<n-1;i++)
源程序文档化要求程序应加注释。注释一般分为序言性注释和【】
关于C++语言与C语言关系描述中错误的是
下列不能被重载的运算符是______。
算法分析的目的是
随机试题
在工艺管架中管路采用U型管的目的是()。
ADreamoftheRedMansionissaid______intodozensoflanguagesinthelastdecade.
易风化药物可使胶囊壳
监理单位为完成监理任务所需要的工程资料,应当( )。
生产经营单位使用的涉及生命安全、危险性较大的特种设备,以及危险物品的容器、运输工具在投入使用前,不需要符合以下哪个条件。( )
通俗历史读物的健康发展,不仅是史学工作者的_______,也是出版传媒工作者肩上的重任,需要多方互相协作、共同努力,让历史不仅仅是一门象牙塔中的高深学问,更成为滋养民族心灵、让更多人读史以明智的知识_______。依次填入画横线部分最恰当的一项是(
简述贞观之治。
马克思、恩格斯批判地继承了前人的成果,实现了人类思想史上的伟大革命。马克思1845年春天写的《关于费尔巴哈的提纲》和马克思、恩格斯1844~1846年合写的《德意志意识形态》,标志着马克思主义的基本形成;1847年《哲学的贫困》和1848年2月《共产党宣言
Writeanessayof160—200wordsbasedonthefollowingpicture.Inyouressay,youshould1)describethepicturebriefly,
对下列二叉树进行前序遍历的结果是()。
最新回复
(
0
)