首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序 #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-05-06
35
问题
有如下程序
#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/1Pfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
关于在调用模板函数时模板实参的使用,下列表述中正确的是()。
下列关于运算符重载的叙述中,错误的是
下列关于this指针的叙述中,正确的是()。
请使用“答题”菜单或使用VC6打开考生文件夹下的工程proj3,其中定义了Septinary类(七进制类),来表示一个七进制的数及其相关操作。和十进制的数“逢十进一”类似,七进制的数定义为“逢七进一”。这里对Septinary类的数据成员做一下说明:c
判断一个字符串是否是回文串的递归函数定义如下:boolhuiwen(strings){intn=s.length();if(n
下列关于虚函数的表述中,正确的是
有如下类定义classMyClasspublic:_________Private:intdata;};若要为MyClass类重载流输入运算符>>,使得程序中可以“cin>>obj;
下列字符串中,不可以用作C++标识符的是()。
已知表达式++a中的’’++"是作为成员函数重载的运算符,则与++a等效的运算符函数调用形式为()。
下列字符中,可以出现在合法的C++标识符中的是
随机试题
习近平新时代中国特色社会主义思想,最重要的内容就是党的十九大报告概括的()
债的法律关系的客体为()。
根据国家对现金使用范围的一般规定,银行结算起点定为2000元。结算起点的调整,由中国人民银行确定,报国务院备案。()
任何客户关系管理或客户关系营销,与客户直接打交道的业务人员,如理财师都是最为关键的。()
我国政府预算周期包括()等环节。
在衡量财政收入规模的指标中,综合反映政府占有和支配社会资源程度的指标是()。
设A为n阶实矩阵,AT是A的转置矩阵,则对于线性方程组(I)Ax=0和(Ⅱ)ATAx=0,必有()
设Ω是球体:(x-a)2+(y-b)2+(z-c)2≤R2,则(x+y+z)dV=__________.
在表设计时,一个字段的基本需求是:具有唯一性且能够顺序递增,则该字段的数据类型应设置为()。
IntellectualPropertyThephraseintellectualproperty(IP)referstothebundleoflegalrightsthatarisefromthecreativ
最新回复
(
0
)