首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序 #include using namespace std; class AA{ char c; public: AA(char ch):c(ch){ }
有如下程序 #include using namespace std; class AA{ char c; public: AA(char ch):c(ch){ }
admin
2020-07-23
32
问题
有如下程序
#include
using namespace std;
class AA{
char c;
public:
AA(char ch):c(ch){ }
~AA(){ cout<
};
class BB: public AA{
AA m;
public:
BB(): m(’M’),AA(’C’){ }
~BB(){ cout<<’m’; }
};
int main(){
BB bb;
return 0;
}
运行这个程序的输出是
选项
A、CMm
B、MCm
C、mCM
D、mMC
答案
D
解析
程序执行结束时,系统会自动调用类的析构函数清理自己的成员,析构函数工作过程如下:1、执行析构函数的函数体;2、如果该类中拥有类对象成员,且类对象有析构函数,则以类对象成员声明次序的相反顺序调用其析构函数,销毁类对象成员;3、按原来构造顺序的相反顺序向上依次调用基类的析构函数。所以程序运行结束时,首先调用BB的析构函数并执行函数体,输出"m";然后调用成员m的析构函数,销毁m成员,输出’M’,再调用基类的析构函数,输出’C’;综上所述,程序运行的输出是:"mMC";答案为D。
转载请注明原文地址:https://jikaoti.com/ti/5ml0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列情况中,不会调用拷贝构造函数的是()。
下列关于类定义的说法中,正确的是()。
有如下类定义:classMyClass{public:private:intdata;};若要为MyClass类重载流输入运算符">>",使得程序中可以"cin>>obj;"的形式改变MyClass类的对象ob
在函数中,可以用auto、extern、register和static这四个关键字中的一个来说明变量的存储类型,如果不说明存储类型,则默认的存储类型是()。
一间宿舍可住多个学生,则实体宿舍和学生之间的联系是( )。
若磁盘上已存在某个文本文件,其全路径文件名为d:\ncre\test.txt,下列语句中不能打开该文件的是
在定义一个类模板时,模板形参表是用一对括号括起来的,所采用的括号是
下列关于return语句的叙述中,正确的是
运算符重载是对已有的运算符赋予多重含义,因此()。
若有如下类声明classMyClass{public:MyClass(){cout<<1;}};执行下列语句MyClassa,b[2],*p1[]2:以后,程序的输出结果是()。
随机试题
患者,女,55岁,眼干,口干5年,右腮腺肿物3年,逐渐加重,现已经出现咀嚼及吞咽困难。右腮腺肿物2cm×3cm大小,表面光滑,无压痛,未见面瘫征象。有类风湿关节炎病史15年。若schirmer试验为3ram/5min,下唇腺活检见局灶性唾液腺炎症,诊断
涩味药多用于治疗()
市场比较法是通过已发生交易案例的价格求算待估土地价格,所以所求价格也称为()。
下列指标中,考虑了资金的时间价值的指标有()。
罗伯特·豪斯确立的四种领导行为,主动征求并采纳下属的意见,属于()。
张女士为A市甲超市财务管理人员,她从2017年1月份开始建立家庭消费电子账,6月份从甲超市购买了下列商品:(1)高档粉底液一盒,支出400元。(2)白酒1000克,支出640元。(3)食品支出1010元,其中:橄榄油2
质量检验准备阶段的主要工作有()。
公平和正义
在窗体上画一个命令按钮,然后编写如下事件过程:PrivateSubCommand1Click()DoUntilb<Oa=InputBox("输入a的值")a=Val(A)
定义学生选修课程的关系模式如下:S(S#,Sn,Sd,Sa)(其属性分别为学号、姓名、所在系、年龄);C(C#,Cn,P#)(其属性分别为课程号、课程名、先选课);SC(S#,C#,G)(其属性分别学号、课号和成绩)。检索选修课程名
最新回复
(
0
)