首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序 #include using namespace std; class AA{ char c; public: AA():c(’X’){ } AA(A
有如下程序 #include using namespace std; class AA{ char c; public: AA():c(’X’){ } AA(A
admin
2021-02-22
43
问题
有如下程序
#include
using namespace std;
class AA{
char c;
public:
AA():c(’X’){ }
AA(AA &aa):c(aa.c){ cout<<2; }
~AA(){ cout<<3; }
char value()const{ return c; }
};
void f1(AA a){ cout<
void f2(AA &a){ cout<
int main(){
AA m;
f1(m);
f2(m);
return 0;
}
运行这个程序的输出是
选项
A、2X3X3
B、2X3X3
C、X3X3
D、XX3
答案
A
解析
程序使用默认构造函数创建AA类对象m,使得m中数据成员c=’X’,然后调用f1函数,由于函数f1形参为AA类对象,需要创建局部对象a,并使用实参m初始化,所以需要调用复制构造函数,输出"2";再执行f1函数体,输出"X",f1函数执行完后,需要销毁局部对象a,调用AA的析构函数,输出"3";再调用f2函数,f2函数的形参为AA类引用,因而不需要调用构造函数,直接执行函数体输出"X",当然,由于没有创建局部对象,f2函数执行完之后也不需要销毁任何数据;最后main执行结束,需要销毁对象m,调用AA的析构函数,输出"3";整个程序输出结果为:"2X3X3",答案为A。
转载请注明原文地址:https://kaotiyun.com/show/pmfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
请打开考生文件夹下的解决方案文件proj1,此工程包含一个源程序文件proj1.cpp。其中位于每个注释“//ERROR****found****”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为:Youareright.注意:只修改注释“
下列选项中,不属于数据管理员(DBA)职责的是()。
下面的描述中,正确的是()。
下列叙述中正确的是()。
下列关于this指针的叙述中,正确的是()。
下列选项中不属于结构化程序设计原则的是()。
下列符号中能够作为C++标识符的是()。
以下选项中合法的实型常数是()。
下列各选项中,不属于序言性注释的是()。
下列字符串中不能作为C++标识符使用的是()。
随机试题
毛泽东明确提出土地改革总路线的著作是()
Aspointedoutatthebeginningofthepassage,peopleusedtothinkthatairpollution______.Thispassageisprimarilyabout
男性,50岁。胃溃疡病史10年,近2个月患者腹痛加重,失去规律,经多种药物治疗无效,体重下降。查体:浅表淋巴结无肿大,腹平软,上腹部有压痛。就目前资料考虑,最可能的诊断是
下列描述动态楔形板不正确的是
氯丙嗪抗精神病作用机制是
以下所列药物中,最适宜“一日给药一次”的是
A.涤痰宣窍B.益气养血C.疏风清热D.清肝泻火E.滋肾养肝症见眩晕,头重如裹,胸闷恶心,宜选用的治法是()。
马歇尔试验的技术指标包括()。
邓小平再三强调要搞清楚“什么是社会主义,怎样建设社会主义”,是为了()。
Inthiscountry,mosthotelsdoofferInternetaccess,______thereisoftenachargeforthisservice.
最新回复
(
0
)