首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序 #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
21
问题
有如下程序
#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://kaotiyun.com/show/QPfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
在下列原型所示的C++函数中,按“传值”方式传递参数的是()。
用于定义类的必不可少的C++关键字是
请使用Ve6或使用【答题】菜单打开考生目录pmj3下的工程文件pmj3。此工程中包含一个源程序文件proj3.cpp,其中定义了用于表示平面坐标系中的点的类MyPoint和表示三角形的类MyTriangle;程序应当显示:6.828432但程序中有缺
有如下程序:#includeusingnamespacestd;classA{public:staticinta;voidinit(){a=1;}A(inta=2){ini
判断一个字符串是否是回文串的递归函数定义如下:boolhuiwen(strings){intn=s.length();if(n
下面关于算法的叙述中,正确的是()。
下列关于虚函数的表述中,正确的是
若MyClass为一个类,执行“MyClassa[4],*p[5];”语句时会自动调用该类构造函数的次数是()。
有如下类定义classMyclasspublic:Private:intdata;};若要为Myclass类重载流输入运算符>>,使得程序中可以“cin>>obj;”形式输入Myclass类的
随机试题
阅读《宝玉挨打》中的一段文字,然后回答下题。贾政冷笑道:“倒休提这话。我养了这不肖的孽障,已不孝;教训他一番,又有众人护持;不如趁今日一发勒死了,以绝将来之患!”说着,便要绳索来勒死。王夫人连忙抱住哭道:“老爷虽然应当管教儿子,也要看夫妻分上。我
与肺移植有关的形式有()。
甲男与乙女通过网聊恋爱,后二人办理了结婚登记。婚后乙得知,甲婚前就患有医学上认为不应当结婚的疾病且久治不愈,乙向法院起诉离婚。下列哪一说法是正确的()
输血时患者出现腰背剧痛,尿呈酱油色,应立即
肾上腺素0.5mg,H,st是
A.可可豆脂B.PoloxamerC.甘油明胶D.半合成脂肪酸甘油酯E.聚乙二醇类多用作阴道栓剂基质
A.生蒲黄B.鸡矢藤C.西红花D.罂粟壳E.血余炭气味恶劣,不能与它药同装于一个药斗内的是
《自然保护区条例》中明确规定,建设自然保护区的条件要求主要包括()
决定与决议的主要不同之处有()。
缓刑:指人民法院对于被判处拘役、三年以下有期徒刑的犯罪分子,根据其犯罪情节和悔改表现,认为确实不致再危害社会的,暂不收监执行刑罚,而规定一定的考验期。在考验期内,被判刑的犯罪分子如果不犯新罪,原判刑罚就不再执行。根据上述定义,下列属于缓刑的是( )。
最新回复
(
0
)