首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; classA { public: A(){cout
有如下程序: #include using namespace std; classA { public: A(){cout
admin
2016-11-25
42
问题
有如下程序:
#include
using namespace std;
classA
{
public:
A(){cout<<"A";}
~A(){cout<<"~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
解析
此题考查的是派生类对象的构造与析构。建立派生类对象时,构造函数的执行顺序如下:执行基类的构造函数,调用顺序按照各个基类被定义时声明的顺序(自左向右)->执行成员对象的构造函数,调用顺序按照各个成员对象在类中声明的顺序->执行派生类的构造函数。所以本题在建立派生类B的对象obj是会先调用基类A的构造函数,然后调用自身的构造函数。注意:B类中定义的成员p是A类的指针而不是一个对象,故在调用自身构造函数前不需要构造。而在B类构造函数中使用new操作符动态地构造了一个A类的对象,所以整个构造结果是输出:ABA。
派生类对象的析构与构造严格相反,即先析构自身,然后析构自身所包含的成员对象,最后调用基类的析构函数。故本题中当main()函数返回时,析构B类的对象obj:首先调用~B(),接着再调用~A()因为在~B()函数中释放了动态创建的A类对象,故整个析构所输出的结果足~B~A~A。所以这个程序输出结果为ABA~B~A~A
转载请注明原文地址:https://kaotiyun.com/show/5EAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
为完成下面的程序,应在划线处填入的语句是#include<iostream>usingnamespacestd;classBase{private:intx;public:B
()是以一种完全通用的方法来设计函数或类而不必预先说明将被使用的每个对象的类型。
以下程序的输出结果是【】。#include<iostream.h>voidmain(){inta=0;a+=(a=8);cout<<a;}
用链表表示线性表的优点是
已知枚举类型定义语句为:enumToken{NAME,NUMBER,PLUS=5,MINUS,PRINT=10};则下列说中错误的是()。
在软件工程中,白箱测试法可用于测试程序的内部结构。此方法将程序看做是
语句int*i;i=newint[10];,释放指针i的语句是【】。
若有说明语句chara[]="Itismine";char*p="Itismille";则以下不正确的叙述是()。
以下程序中函数scmp的功能是返回形参指针s1和s2所指字符串中较小字符串的首地址。#include<string>char*scmp(char*s1,char*s2){if(strc
下列叙述中,错误的是()。
随机试题
NotonlyJimbutalsohisparents(invite)________toattendmyparty.
试求:下图(a)所示结构C点的竖向位移;下图(b)所示结构C点的水平位移。
男性,67岁。近两年来出现讲话时突然沉默不语,约两小时后转为正常,有时出现视幻觉。近一年来出现双手抖动,查双上肢肌张力齿轮样增高。非本病的核心症状是
A.Na+B.K+C.Ca2+D.Cl-E.Mg2+在骨骼朋.兴奋一收缩耦联中,起关键作用的离子是
患者,女,78岁,上下无牙颌,戴全口义齿已有4年,主诉义齿固位不佳,应采取的措施为()
材料:下课了,当学生说“谢谢老师时”,我真想说“谢谢同学们”。孩子们今天在课堂上提出的“问题”、他们在课堂上的“插嘴”使我不断地调整、改写我原先设计好的“教案”。所以,今天我最想说的是“教案在下课之后才完成的”。而且,在整个课堂教学中,尽管
教育心理学研究对教育实践具有描述、解释、预测和______的作用。
××县办公室秘书草拟了一份要求下属单位上报年终工作总结的公文。关于这份公文,下列说法正确的是()。
4,5,12,67,628,()
【2019-22】1925年,在收回教育权运动的推动下,北洋政府教育部颁布了法令,规定()。
最新回复
(
0
)