首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class AA{ public: AA(){ cout
有如下程序: #include using namespace std; class AA{ public: AA(){ cout
admin
2020-06-29
55
问题
有如下程序:
#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/xa8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列叙述中错误的是()。
C++语言的参数传递机制包括传值和传地址两种,如果调用函数时,需要改变实参或者返回多个值,应该采取______方式。
C++语言的参数传递机制包括传值和传地址两种,如果调用函数时,需要改变实参或者返回多个值,应该采取【】方式。
有如下的程序:#include<cstring.h>#include<iostream.h>usingnamespacestd;classMyString{public:MyString(constchar*s);~MySt
当在使用类模板时,类模板本身被实例化咸了一个具体的______。
在说明一个结构体变量时,系统分配给它的存储空间是()。
A、 B、 C、 D、 A线性表的链式存储结构中的结点空间是动态生成的,它们在内存中的地址可能是连续的,也可能是不连续的。
设在主函数中有以下定义和函数调用语句,且fun()函数为void类型,请写出fun()函数的首部______。intmain(){doubles[10][22];intn:...fun(s)
开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做()。
随机试题
以下说法错误的是()。
糖尿病患者可达到较好降糖效果且安全的适宜运动时间是
患者女性,23岁。四天前出现右下后牙区肿痛不适,昨日起疼痛加剧,并出现张口受限。检查见右面颊部稍肿胀,张口度二指,近中阻生,牙龈红肿,远中盲袋有少量脓液溢出,叩痛(一),其颊侧前庭沟黏膜充血,咽部检视不清。此患者的诊断是()
胚胎期指的是受孕后的()
关于管理的说法,错误的是()。(2010年单项选择第5题)
当事人就已经撤销的涉外仲裁案件再次向仲裁委员会提出申请的,根据法律规定,对此应如何处理?()
以下不属于讲授法的方法是()。
某区政府积极适应社会治理工作新常态,运用互联网、大数据、云计算等新技术与社会治理工作深度融合,通过微信公众平台、QQ等网络移动终端及时为居民服务。这一做法()。①实现了科学民主决策②提升了社会治理水平③贯彻了为民服
[*]
冒泡排序在最坏情况下的比较次数是
最新回复
(
0
)