首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序 #include using namespace std; class AA{ char c; public: AA(char ch):c(ch){ cout
有如下程序 #include using namespace std; class AA{ char c; public: AA(char ch):c(ch){ cout
admin
2021-05-06
22
问题
有如下程序
#include
using namespace std;
class AA{
char c;
public:
AA(char ch):c(ch){ cout<
~AA(){ cout<<"a"; }
};
class BB{
AA m1;
AA m2;
public:
BB(): m2(’p’),m1(’q’){ cout<<"B"; }
~BB(){ cout<<"b"; }
};
int main(){
BB bb;
return 0;
}
运行这个程序的输出是
选项
A、pgBaab
B、pgBbaa
C、qpBaab
D、qpBbaa
答案
D
解析
构造函数初始化列表仅指定用于初始化成员的值,不指定这些初始化执行的次序,成员初始化的次序是类定义中声明成员的次序,成员初始化完成后执行构造函数的函数体;所以程序中在创建BB对象时,首先初始化m1,再初始化m2,由于m1、m2都是AA对象,且有实参q、p,所以调用构造函数AA(charch),用ch初始化成员c后输出成员c的值,即输出’q’、’p’,再执行类BB的函数体,输出’B’;程序执行结束时,系统会自动调用类的析构函数清理自己的成员,析构函数工作过程:
1、执行析构函数的函数体;
2、如果该类中拥有类对象成员,且类对象有析构函数,则以类对象成员声明次序的相反顺序调用其析构函数,销毁类对象成员;
3、按原来构造顺序的相反顺序向上依次调用基类的析构函数。
所以程序运行结束时,首先调用BB的析构函数并执行函数体,输出"b";然后调用m2的析构函数,销毁m2成员,输出’a’,再调用m1的析构函数,销毁m1成员,输出’a’;综上所述,程序运行的输出是:"qpBbaa";答案为D。
转载请注明原文地址:https://jikaoti.com/ti/6Bh0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有下列程序:#includevoidmain(){inta1,a2charc1,c2;scanf("%d%c%d%c",&a1,&c1,&a2,&c2);printf("%d%c%d%c",a1
有下列程序:#includestructst{intx,y,date[2]={1,10,2,20);voidmain(){structst*p=date;printf("%d
程序执行后的输出结果是()。#includevoidmain(){charflag=’c’;switch(flag){case’a’:cout
某二叉树中共有935个结点,其中叶子结点有435个,则该二叉树中度为2的结点个数为
有如下类声明:classMau{intk;constintm;public:Mau(intk1,intm1);};则构造函数Mau的下列定义
数据流图中带有箭头的线段表示的是()。
下列给定程序中,函数fun的功能是:从n个学生的成绩中统计出低于平均分的学生人数,此人数作为函数值返回,平均分存放在形参avet所指的存储单元中。例如,输入8名学生的成绩:80.5、60、72、90.5、98、51.5、88、64则低于
下面关于算法的叙述中,正确的是()。
在表达式x+y*z中,+是作为成员函数重载的运算符,木是作为非成员函数重载的运算符。下列叙述中正确的是()。
下列字符串中可以用作C++标识符的是()。
随机试题
温病“顺传”是指
因经营高档烹饪原料有较高的商业利润,所以市场上常有假冒的高档烹饪原料出售。()
领导者倾向于追求工作任务的完成,并从工作成就中获得满足,这种领导方式的类型为人际关系导向型。()
以下关于粘结力的说法哪项是错误的
根据使用场所不同,闭式细水雾灭火系统可以分为()种形式。
根据公司法律制度的规定,下列情形中,属于股份有限公司可以收购本公司股份的有()。
甲股份有限公司(以下简称“甲公司”)为增值税一般纳税人,适用的增值税税率为17%。2014年甲公司自行建造一条生产线,相关业务的资料如下:(1)1月10日,购进为生产线准备的一批物资,价款为140万元,增值税税额为23.8万元。该批物资已验收入库;款项以
【减租减息】华东师范大学2006年中国近现代史真题;天津师范大学2014年历史学基础真题
Whohasn’twantedtomasternotjusttwolanguagesbut10?TakeGiuseppeMezzofanti,a19th-centurypriestwhowassaidtobe【C1
Thetimeonecanenjoyanumberofdifferentsportingactivitiesinthesportscenterisfrom______.
最新回复
(
0
)