首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #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
36
问题
有如下程序:
#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://jikaoti.com/ti/jTW0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有以下程序:#include<stdio.h>voidfun(inta[],intn){inti,t;for(i=0;i<n/2;i++){t=a[i];a[i]=a[n-1-i];a[n-1-i]=t;}}main(){intk[
有以下程序:#include#defineN4voidfun(inta[][N],intb[]){inti;for(i=0;i<N;i++)b[i]=a[i][N-1-i];}
若有定义:inta=0,b=0,c=0,d=0;,以下关于C语言表达式:(++a||++b):++c:++d执行顺序的叙述正确的是
有以下程序:#include<stdio.h>intfun(inta,intB){if(b==0)returna;elsereturn(fun(--a,--b));}main(){printf("%d\n",fun(4,2));}
以下叙述中错误的是()。
程序中已构成如下图所示的不带头结点的单向链表结构,指针变量s、p、q均已正确定义,并用于指向链表结点,指针变量s总是作为指针指向链表的第一个结点。若有以下程序段:q=s;s=s->next;p=s;while(p->next)p=p->next:p
数据管理技术发展的三个阶段中,()没有专门的软件对数据进行管理。Ⅰ.人工管理阶段Ⅱ.文件系统阶段Ⅲ.数据库阶段
下面属于黑盒测试方法的是()。
算法的有穷性是指()。
随机试题
X2010型龙门铣床的进给箱动力由___________供给。
简述市场利率的构成要素。
混合痔是指
只有一个权力中心的家庭类型是
最易变成结肠癌的疾病是
有关具体行政行为有下列情形之一的,人民法院判决撤销()。
一个口袋内有4个不同的红球,6个不同的白球.从中任取4个球,红球的个数不比白球少的取法有多少种?
Thestorytookplaceinasmalltown______themorningofFebruary6.
Atatimewhentheworldisshortofcausesforcelebration,hereisacandidate;withinthenextfewmonthswomenwillcrossth
Thefirstparagraphtellsusthat______.Fromthelastparagraph,wecanseethattheauthor’sattitudetowardsdisabledpeopl
最新回复
(
0
)