首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include <iostream> using namespace std; class A { public: A() { cout << "A"; } ~A() {cout << "
有如下程序: #include <iostream> using namespace std; class A { public: A() { cout << "A"; } ~A() {cout << "
admin
2009-06-20
70
问题
有如下程序:
#include <iostream>
using namespace std;
class A {
public:
A() { cout << "A"; }
~A() {cout << "A"; }
};
class B {
A a;
public:
B() {cout << "B"; }
~B() { cout << "B"; }
};
int main() {
B b;
return 0;
}
程序的输出结果是【 】。
选项
答案
ABBA
解析
本题考查的知识点是:类的构造与析构。建立一个类的对象时,构造函数的执行顺序如下:
①执行基类的构造函数,调用顺序按照各个基类被继承时声明的顺序(自左向右);
②执行成员对象的构造函数,调用顺序按照各个成员对象在类中声明的顺序(自上而下);(如果一行声明了多个对象,则还要遵循自左向右)
③执行自身的构造函数。
析构顺序与之相反。本题的B类没有基类,但有一个A类的成员a。所以构造B类对象时,先构造成员a再构造自身。因此,构造时输出的结果为AB,析构顺序严格与构造相反,故析构输出BA。所以程序最终输出结果是ABBA。
转载请注明原文地址:https://www.kaotiyun.com/show/iojp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
在数据库系统的组织结构中,下列()映射把用户数据库与概念数据库联系了起来。
定义结构体数组structstu{intnum;charname[20];}x[5]={1,"ZHAO",2,"QIAN",3,"SUN",4,"LEE",5,"ZHOU"};for(i=1;i<5;i++)printf("%d%c",x
以下叙述中正确的是
下列有关数据库的描述,正确的是()。
下列给定程序中,函数fun的功能是:求ss所指字符串数组中长度最短的字符串所在的行下标,作为函数值返同,并把其串长放在形参n所指的变量中。ss所指字符串数组中共有M个字符串,且串长小于N。请在程序的下画线处填入正确的内容并将下画线删除,使程序得出
在长度为n的有序线性表中进行二分查找,最坏情况下需要比较的次数是()。
以下关于C语言数据类型使用的叙述中错误的是()。
按照C语言规定的用户标识符命名规则,不能出现在标识符中的是
若有以下函数首部intfun(doublex[10],intn)则下面针对此函数的函数声明语句中正确的是
以下关于结构化程序设计的叙述中正确的是
随机试题
下列各项中,不应列入利润表“营业收入”项目的是()。
识记
急性肝炎时,LD同工酶谱中以何种增高为主
不发生相互作用的免疫细胞膜分子是
A.乳果糖B.生长抑素C.柳氮磺胺吡啶D.左旋多巴E.利福平主要用于治疗溃疡性结肠炎的药物是
“蓝牙”技术是()。
大理石具有( )等优点。
教育情境
增强现实技术是一种实时地计算摄影机影像的位置及角度并加上相应图像的技术,这种技术的目标是在屏幕上把虚拟世界套在现实世界并进行互动。根据上述定义。下列属于增强现实技术的是:
印记学习是指发生在动物生活的早期阶段、由直接印象形成的学习行为,印记学习行为虽发生在早期,但对晚期行为也具有一定影响。根据上述定义,下列不属于印记学习行为的是()。
最新回复
(
0
)