首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class AA{ public: AA(){ cout
有如下程序: #include using namespace std; class AA{ public: AA(){ cout
admin
2021-05-06
58
问题
有如下程序:
#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/qJfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
给出下面程序输出结果()。#include<iostmam.h>voidmain(){int*p1;int**p2=&p1;intb=20;p1=&b;cout<<**p2<<en
下列关于模板的叙述中,错误的是()。
要建立文件流并打开当前目录下的文件file.dat用于输入,下列语句中错误的是()。
如果利用C++流进行输入输出,下面的叙述中正确的是()。
对于一个类定义,下列叙述中错误的是()。
建立一个有成员对象的派生类对象时,各构造函数体的执行次序为()。
下列字符串中不能作为C++标识符使用的是()。
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:(1)基类Person完成打印功能,定义其中的打印函数为虚函数,请在注释//********1********后
对线性表进行二分法检索,其前提条件是()。
字符串"8+a=\tb\n\r"的长度为
随机试题
癫癎部分性发作首选药物为
患者,女,26岁。长期低热,头晕眼花,心悸不宁,面白少华,唇甲淡白,舌质淡,脉细。其治法是
怀疑为异位妊娠时,需做的辅助检查是
各单位应当定期对账,对账工作()至少进行一次。
我国银行监管模式是( )。银行监管的原则包括( )。
下列各项选样方法中,在统计抽样和非统计抽样中可能都适用的有()。
假如咖啡因累积与焦虑相关,于是得出“咖啡因造成焦虑”的结论。这是()
已知函数y=y(x)在任意点x处的增量,其中α是△x(Ax→0)的高阶无穷小,且y(0)=π,则y(1)等于
数据库应用系统中的核心问题是______。
EnergyuseandairpollutionhavebeensynonymousinChinafordecades,especiallyinurbanareas.【66】Fifteenor20yearsagoin
最新回复
(
0
)