首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class AA{ public: AA(){ cout
有如下程序: #include using namespace std; class AA{ public: AA(){ cout
admin
2021-02-22
26
问题
有如下程序:
#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/dEfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#include<iostream>usingnamespacestd;intmain(){voidfunction(doubleval);doubleval;f
有如下程序:#include<iostream>usingnamespacestd;classBoat;classCar{public:Car(inti):weight(i){}
有如下的运算符重载函数定义:doubleoperator+(inti,intk){returndouble(i+k);}但定义有错误,对这个错误最准确的描述是()。
检查软件产品是否符合需求定义的过程称为
运算符函数调用格式的表达式“y/x++”与表达式“y.operator/(operator++(x,0))”的含义相同,由此可看出()。
用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了多个类,但类不能达到输出要求,按照定义的输出修改函数,使得输出如下:TestClass3TestClass2TestClass1其中定义的类并不完整,
已知Value是一个类,value是Value的一个对象。下列以非成员函数形式重载的运算符函数原型中,正确的是()。
负责数据库中查询操作的数据库语言是()。
下列有关指针的操作中,正确的是()。
关系数据库管理系统能实现的专门关系运算包括()。
随机试题
我国应发展()农业。
在城市自然资源条件下,制约工业项目发展的是()
期货公司设立、变更、解散、破产、被撤销期货业务许可或者其营业部设立、变更、终止的,期货公司应当在省级以上的报刊或者媒体上公告。( )
下面不属于M1的范围的是()。
下列做法中错误的是()。
服务是指为他人做事.并使他人从中受益的一种有偿或无偿的活动,不以或很少以实物形式而以提供活劳动的形式满足他人某种特殊需要。根据以上定义,以下不属于服务的是:
【关税自主】
算法的时间复杂度是指()。
A、Sellanddelivergoods.B、Cleantherooms.C、Helptrainemployees.D、Cookmealsforthestuff.A对话中,男士问女士经常在她父亲的购物中心工作吗,女士回答说她
StudentsatFudanUniversitywillbidforadateandyoung【B1】______officeworkerswillstartoffforathree-daytriptoZhejia
最新回复
(
0
)