首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class AA{ public: AA(){ cout
有如下程序: #include using namespace std; class AA{ public: AA(){ cout
admin
2019-07-10
31
问题
有如下程序:
#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全国计算机二级
相关试题推荐
在任何类中都有三种访问权限的数据成员,这三种权限是public、private和【 】。
有如下程序: #include<iostream> using namespace std; class Base { public: void fun() { cout<<"Base::fun"<<en
下面程序的功能是将从键盘输入的一对数,由小到大排序输出,当输入一对相等数时结束循环,在划线处应填入的选项是#include<iosweam.h>voidmain(){inta,b,t;cin>>a>>b;
在关系数据库中,每一个二维表称为______。
下列符号中可以用作C++标识符的是()。
下面的语句中错误的是
下列叙述中错误的是
以下选项中合法的用户标识符是
对中断语句的说法,不正确的是()。
C++中设置虚基类的目的是()。
随机试题
在Windows中,删除文件和文件夹的错误说法是________________。
A.亚铁血红素B.尼克酰胺C.磷酸吡哆醛D.黄素腺嘌呤E.辅酶A氨基转移酶(即转氨酶)的辅基含有
A.保和丸B.藿香正气丸C.葛根黄芩黄连汤合六一散D.参苓白术散E.附子理中汤合四神丸
A、中国药典B、企业标准C、注册标准D、行业标准E、炮制标准国家食品药品监督管理局批准给申请人特定药品的标准是
患者,男性,65岁。颅内压升高,医嘱给予输注20%甘露醇250mi。输注时间至多
事故预警应遵循的基本原则是()。
给水铸铁管敷设于交通要道等振动较大的地段时,应采用的接口连接方式为()。
依法治国是党领导人民治理国家的()
BadnewsforbankersTherewasgreatuncertaintytodayaboutthefutureforemployeesofLancetBankfollowingpublicati
AlthoughJohnwastheeldestinthefamily,healwayslethissister______chargeofthehouse.
最新回复
(
0
)