首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序 #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
2015-07-22
69
问题
有如下程序
#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://kaotiyun.com/show/l5Np777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序: #include <iostream> using namespace std; class B { public: virtual void show() { cout<<"B"; } };
在E.R图中,图形包括矩形框、菱形框、椭圆框。其中表示实体联系的是【】框。
假设用一个长度为50的数组(数组元素的下标从0到49)作为栈的存储空间,栈底指针bottom指向栈底元素,栈顶指针top指向栈顶元素,如果bottom=49,top=30(数组下标),则栈中具有【】个元素。
通过派生类的对象可直接访问其
软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是
数据库保护分为安全性控制、【】、并发性控制和数据的恢复。
下列表达式中,错误的是()。
假定MyClass为一个类,则该类的拷贝初始化构造函数的声明语句为()。
设置虚基类的目的是【】,通过【】表示虚基类。
派生类的对象对它的基类成员中()是可以访问的。
随机试题
业务决策
依我国《合同法》的规定,如甲发现自己同乙订立了重大误解的合同,他应当在此日起的一年内向法院申请撤销。()
对麻醉药品和第一类精神药品等特殊管理药品“五双”管理规定不包括
在工程网络计划中,工作的总时差是指在不影响()的前提下,该工作可以利用的机动时间。
根据《票据法》规定,下列各项中,属于支票必须记载事项的有()。
中华人民共和国出入境通行证是由()。
简述运输方式的运作特征
简述教学过程优化的要求以及教师在教学过程中应怎样实施优化?
________是指同类别人声组成的合唱。
下列关于恶意代码的描述中,错误的是()。
最新回复
(
0
)