首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class A { public: A(){cout
有如下程序: #include using namespace std; class A { public: A(){cout
admin
2020-07-23
63
问题
有如下程序:
#include
using namespace std;
class A
{
public:
A(){cout<<"A";)
一A(){tout<<"~A";}
};
class B:public A
{
A*p;
public:
B(){cout<<"B";p=new A;}
~B(){cout<<"~B";delete p;}
};
int main()
{
B obj;
return 0:
}
执行这个程序的输出结果是( )。
选项
A、BAA~A~B~A
B、ABA~B~A~A
C、BAA~B~A~A
D、ABA~A~B~A
答案
B
解析
此题考查的是类的构造函数和析构函数。派生类构造函数的执行顺序为:首先调用基类的构造函数,调用顺序按它们被继承时说明的顺序;然后调用了对象的构造函数,调用顺序按它们在类中说明的顺序;最后是派生类构造函数中的内容。凶此本题中,首先调用基类构造函数输出A,然后调用子对象的构造函数输出B,p=new A再调用类A的构造函数输出A;析构函数的调用顺序和构造函数的调用顺序相反。
转载请注明原文地址:https://kaotiyun.com/show/x9yp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下类声明:classFin{public:Fin();//①Fin*pf;//②Finf;//③Fin&p;//④
下列关于派生类构造函数和析构函数的说法中,错误的是()。
下列有关函数重载的叙述中,错误的是()。
下列关于运算符函数的表述中,错误的是
有如下类声明和函数声明classBase{intm;public:intn;protected:intp;};classDer
下面描述中错误的是( )。
下列叙述中正确的是
下列关于运算符重载的描述中,错误的是
下列字符串中,不可以用做C++标识符的是()。
请使用“答题”菜单或使用VC6打开考生文件夹proj2下的工程proj2。本程序中有两个类:一是时间类(Time),用于表示一天中的时间,采用24小时制;另一个是街灯类(StreetLight),用于表示街上的路灯StreetLight类中有Time类的数
随机试题
工件变形主要因为什么引起?
Crohn病与肠结核的最重要鉴别是
长期应用糖皮质激素可引起
尸体料理时,头下垫枕垫的目的是
下列关于可燃固体燃烧过程的叙述中,正确的是()。
以下哪些是个人住房贷款的特点()。
算术平均数与众数、中位数具有的共同特点是()。
Nearly,all"speedreading"courseshavea"pacing"element—sometimingdevicewhichletsthestudentknowhowmanywordsaminu
储存能克服生产旺季与生产淡季同消费者需求之间的矛盾,调节供求关系,调整由于供求矛盾而造成的价格差异,具有调节物品价格的功能。
Exposuretoasbestosfiberscancausecancer_____Evidencefrom.theeconomistsandthebuildingindustriesshowsthat______
最新回复
(
0
)