首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #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
62
问题
有如下程序:
#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://kaotiyun.com/show/iojp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有以下程序:#include<stdio.h>intfun(intx,inty){if(x==y)return(x);elsereturn((x+y)/2);}main(){
以下程序的输出结果是()。#include<stdio.h>main(){inta=4,b=3,c=2,d=1;printf(’’%d’’,a<b?a:d<c?d:b);}
若有定义“intx,y;”并已正确给变量赋值,则下列选项中与表达式“(x—y)?(x++):(y++)”中的条件表达式“(x—y)”等价的是()。
有以下程序:#include<stdio.h>#defineN4voidfun(inta[][N],intb[])inti:for(i=0:i<N;i++)b[i]=a[i][i];main()int
在软件设计中不使用的工具是()。
有如下程序段:intx=12;doubley=3.141593;printf("%d%8.6f",x,y);其输出结果是()。
设有如下关系表:则下列操作正确的是()。
下面不属于软件设计阶段任务的是()。
算法空间复杂度的度量方法是
一棵二叉树中共有80个叶子结点与70个度为1的结点,则该二叉树中的总结点数为
随机试题
不用于短效口服避孕药的是:
管子水平固定对接焊时,既有仰焊、平焊,又有立焊。()
某男,45岁,下痢十余日,症见泻下粘冻,里急后重,腹痛拘急,脘腹胀满,头身困重,苔白腻,脉濡缓。辨证为
关于风湿性疾病的概念下列哪种说法是对的
下列情形中,构成倒卖文物罪的有哪些?
根据我国有关规定,下列情形应当认定为或者视同工伤的有()。
优先认股权是指老股东可根据其持有发行公司股份的数量,按持有时间长短优先认购增发的新股的权利。( )
筛选是对()数据表中检索出符合条件的记录并显示出来,同时隐藏不符合条件的记录。
张教授:据世界范围的统计显示,50年代,癌症病人的平均生存年限(即从确诊到死亡的年限)是2年,而到20世纪末,这种生存年限已升至6年。这说明,世界范围内诊治癌症的医疗水平总体上有了显著提高。李研究员:您的论证缺乏说服力。因为您至少忽视了这样的一个事
求直线在平面∏:x一y+2z一1=0上的投影直线L0的方程,并求L0绕y轴旋转一周所成曲面的方程.
最新回复
(
0
)