首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序 #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-09-05
31
问题
有如下程序
#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://jikaoti.com/ti/cvc0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
通过运算符重载,可以改变运算符原有的()。
下列选项可以做C++标识符的是()。
有如下程序:#include<iostream>usingnamespacestd;classMyClass{public:MyClass(){++count;}~MyClass(){--count;}staticintgetCou
下列关于模板的叙述中,错误的是()。
有如下程序:#includeusingnamespacestd;classC1{public:~C1(){cout
下列关于继承方式的描述中,错误的是()。
有两个关系R和S如下:则由关系R得到关系S的操作是()。
请打开考生文件夹下的解决方案文件proj1,其中有线段类Line的定义。程序中位于每个“//ERROR****found****”之后的一行语句有错误,请加以改正。改正后程序的输出结果应该是:Endpoint1=(1,8),Endpo
下列关于虚函数的表述中,正确的是
针对数组定义intdata[10];,下列表述中错误的是()。
随机试题
下列语句中,变量名无效的是()
关于肾柱肥大声像图表现,不包括
图4-44所示机构由杆O1A、O2B和三角板ABC组成。已知:杆O1A转动的角速度为ω,O1A=O2B=r,AC=h,O1O2=AB,则图示瞬时点C速度vC的大小和方向为()。
共建设工程的直接费为4800万元,其中直接工程费为2560万元,年平均二次搬运费开支额为28万元,全年建安产值为1500万元,直接工程费占总造价的比例为80%,则二次搬运费为()万元。
下列说法中,正确的有()。
恩格尔系数是表示()的一个指标。
建设工程在保修范围和保修期限内发生质量问题,()应当履行保修义务。并对造成的损失承担赔偿责任。
以下关于应用级网关,错误的是()。
(1)Whatcausesasorethroat?Manythingscancauseasorethroat.Thesecausesincludeinfectionswithvirusesorbacteria
Moresurprising,perhaps,thanthecurrentdifficultiesoftraditionalmarriageisthefactthatmarriageitselfisaliveand【B1
最新回复
(
0
)