首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include<iostream> using namespace std; class A { public: A(){cout<<"A";} ~A(){cout<<"~A";} };
有如下程序: #include<iostream> using namespace std; class A { public: A(){cout<<"A";} ~A(){cout<<"~A";} };
admin
2013-05-30
38
问题
有如下程序: #include<iostream> using namespace std; class A { 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
解析
此题考查的是类的构造函数和析构函数.派生类构造函数的执行顺序;首先调用基类的构造函数,调用顺序按它们被继承时说明的顺序;然后调用子对象的构造函数,调用顺序按它们在类中说明的顺序;最后是派生类构造函数中的内容.因此本题中,首先调用基类构造函数输出A,然后调用子对象的构造函数输出B, p=new A再调用类A的构造函数输出A;析构函数的调用顺序和构造函数的调用顺序相反。
转载请注明原文地址:https://kaotiyun.com/show/71Np777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
结构化程序设计所规定的三种基本控制结构是()。
程序的三种基本控制结构是()。
对于语句cout<<end1<<x;中的各个组成部分,下列叙述中错误的是______。
在C++中,打开一个文件,就是将这个文件与一个()建立关联,关闭一个文件,就是取消这种关联。
下列有关数据库的描述,正确的是()。
概要设计是软件系统结构的总体设计,以下选项中不属于概要设计的是()。
下列程序中,先声明一个圆类circle和一个桌子类table,另外声明一个圆桌类roundtable,它是由circle和table两个类派生的,要求声明一个圆桌类对象,并输出圆桌的高度,面积和颜色。请填空完成程序#include<iostrea
从用户角度看,下面列出的条目中()是数据库管理系统应具有的目标。Ⅰ用户界面友好Ⅱ内部结构清晰、层次分明Ⅲ开放性,即符合标准和规范Ⅳ负责管理企业组织的数据库资源
以下数据结构中不属于线性结构的是()。
在下面程序中,A、B、C、D四句编译时不会出错的是()。#include<iostream>usingnamespacestd;classBase{public:Base();
随机试题
环氧乙烷沸点为
巨噬细胞产生的主要细胞因子是
甲欲在路边盖门面房,但路边的树枝阻碍了施工。在未取得采伐许可的情况下,甲将部分树枝砍掉,所砍树枝共计6立方米。对甲的行为认定,下列哪些选项是错误的?()
测绘工作的基本任务是()。
中度的通货膨胀是指价格上涨程度在()。
背景资料:某高速公路跨线大桥(7×20m+65m+7×20m+5×20m)引桥上部结构为预应力钢筋混凝土箱梁,后张法施工,采用预制吊装施工工艺。预制场布设在桥位附近荒地,地势平坦,承包人根据工期要求设置10个预制台座,预制场整平压实后,浇筑台座混
银行已经付款记账而企业尚未付款记账,会使开户单位银行存款账面余额小于银行对账单的存款余额。()
证券在流动中存在的因其价格变化给持有者带来损失的可能被称为证券交易的( )。
(2016)以下选项不属于学习现象的是()。
下列有关简报,说法不正确的是()。
最新回复
(
0
)