首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class AA{ public: AA(){ cout
有如下程序: #include using namespace std; class AA{ public: AA(){ cout
admin
2020-07-23
63
问题
有如下程序:
#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/2Fyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列字符串中,不可以用做C++标识符的是()。
在面向对象方法中,不属于“对象”基本特点的是()。
下列关于运算符重载的叙述中,错误的是()。
有如下类定义:classVechicle{//基类public:Vechicle(strings):name(s){}protected:
有如下程序:#includeusingnamespacestd;intmain(){intsum;for(inti=0;i<3;i+=
有如下类定义:classMyBase{intk;public:MyBase(intn=0):k(n){}intvalue()const{returnk;}};classMyDerived:MyBase{intj;
下列有关虚函数的表述中正确的是
下列字符串中可以用作C++标识符的是
执行语句序列intx=l,&y=x;cout
将E-R图转换到关系模式时,实体与联系都可以表示成()。
随机试题
关于检验分析质量的描述,正确的是
以下治疗月经病诸法,除哪一法外均为常用之法
女性,46岁,口渴、多饮、多尿、体重下降3年,恶心、呕吐2天,身高165cm,体重50kg,无糖尿病家族史,尿酮体(++),空腹血糖17.9retool/L。该患者最需要进行哪两种糖尿病类型的鉴别
女,18岁。发热、鼻出血,皮肤紫癜2周,舌尖可见血泡,双下肢可见瘀斑,浅表淋巴结及肝脾未触及,胸骨压痛阴性,血红蛋白52g/L,白细胞2.0×109/L,分类:中性0.24,淋巴0.75,嗜碱粒0.01,血小板22×109/L,网织红细胞0.001,胸部X
下列说法错误的是()。
()被称为我国最大的古典艺术宝库。
近年来,为避免煤矿安全事故的发生,很多煤矿主都加强了对安全生产的重视程度。公开资料显示:2000年以前,中国煤矿事故每年死亡上万人。从2000年开始,每年事故死亡人数开始控制在7000人以下,2003年事故死亡人数为6434人;2004年死亡6027人;2
国务院政策例行吹风会指出,通过“三个统一、两个巩固”完善城乡义务教育经费保障机制。以下不属于“三个统一”的是:
Theoldadageofthetitlehasaparallelinthescientificworld"allresearchleadstobiomedicaladvances".Thefactthatres
下面_______正确描述了网络中的冲突?
最新回复
(
0
)