首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序 #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
2015-07-22
26
问题
有如下程序
#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/LVNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列关于this指针的叙述中,正确的是
虚函数必须是类的【】。
如果类A被说明成类B的友元,则
下列程序的输出结果为#include<iostream.h>intfunc(intn){if(n<1)returnl;elsereturnn+func(n-1);
结构化程序设计主要强调的是
在C++语言中,访问一个对象的成员所用的运算符是【】,访问一个指针所指向的对象的成员所用的运算符是【】。
非成员函数只有在声明为类的【】才能访问这个类的所有private成员。
如果表达式y*x+十中,“*”是作为成员函数重载的运算符,“++”是作为友元函数重载的运算符,采用运算符函数调用格式,该表达式还可表示为
有一种只在循环语句或switch语句中使用的流程控制语句,表示该语句的关键字是【 】。
下列叙述中正确的是
随机试题
54岁男性患者,反复水肿、尿少5个月,肾活检病理报告为早期膜性肾病,下列哪种说法错误
肾结核阴虚火旺证附睾结核阳虚寒凝证
三相异步电动机的旋转方向决定于()。
生活污水量约占生活用水量的()。
上市公司董事会通过股票股利分配方案时,财会部门应将拟分配的股票股利确认为负债。()
( ) is a major port of Greece.
在期货交易中,实物交割应以客户的名义进行。()
()是指证券是权利的一种物化的外在形式,它是权利的载体,权利是已经存在的。
埃里克森论述的影响人格发展的因素中不包括
下列命题中为真的是
最新回复
(
0
)