首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有如下程序: #include using namespace std; class TestClass { public: TestClass(){cout
有如下程序: #include using namespace std; class TestClass { public: TestClass(){cout
admin
2012-12-29
65
问题
有如下程序:
#include
using namespace std;
class TestClass
{
public:
TestClass(){cout<<“default constructorkn”;}
TestClass(const TestClass&x){cout<<“copy constructor\n”;}
};
TestClass userCode(TestClass b){TestClass c(b);return c;}
int main()
{
TestClass a,d;
cout<<“calling userCode()\n”;
d=userCode(a);
return 0:
}
在执行过程中,构造函数TestClass()和TestClass(constTestClass &x)被调用的次数分别是( )。
选项
A、1和1
B、1和2
C、2和3
D、2和4
答案
C
解析
在主函数中定义了两个TestClass类型的变量a,d,因此执行两次构造函数TestClass ()。接下来执行d=userCode(a);,在执行该函数时,由于userCode采用了传值方式来传递参数,所以要调用一次TestClass(const TestClass &x)。在函数userCode内部TestClass c(b);语句又调用了一次拷贝构造函数,由于函数userCode返回的不是引用,而是一个TestClass变量,所以还需要执行一次拷贝构造函数,所以一共要执行两次普通构造函数(非拷贝构造函数)与三次拷贝构造函数。
转载请注明原文地址:https://kaotiyun.com/show/MuVp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有以下程序:main(){intn=0;do{n++;printf(’’%d\n’’,n);}while(n<=3);}程序的输出结果是()。
若有以下程序#include<stdio.h>main(){intb=10,a=-11;a%=b%=4;printf("%d%d\n",a,b);}则程序的
运行下面的程序,输入字符串“MicrosoftVisua1Studio”,则程序的执行结果是()。#inc1udemain(){charChr[20];scanf("%s",&Chr);p
C源程序中不能表示的数制是()。
有以下程序:#include<stdio.h>main(){inta[]={2,3,5,4},i;for(i=0;i<4;i++)switch(i%2){case0:switch(a[i]%2){case0:a[i]++;break;ca
下列程序的运行结果是()。#include<stdio.h>voidfun(int*s,int*p){staticintt=3;*p=s[t];t--;}voidmain()
随机试题
A.肥厚型心肌病B.慢性大量心包积液C.急性纤维蛋白性心包炎D.急性心包填塞E.以上均不是患者男性,38岁,胸痛2周,咳嗽时加重。查体:胸骨左缘3、4肋间可闻及搔刮样粗糙音,6天后消失。最可能的诊断为
在眼部检查中可作为诊断"黄油症"的诊断依据是:如果病人患的是胬肉攀睛,在眼部检查中最不可能出现的症状是:
痉病的治疗原则为
下列哪项不是血栓闭塞性脉管炎的发病因素
关于提取和使用职工教育培训经费的说法,正确的是()。
西方第一本以“教育心理学”命名的专著诞生于1924年。()
简述初中生个性发展的特点。
行政诉讼是由()来主持的。
我国《宪法》第36条第4款规定,我国()不受外国势力的支配
设u=f(x,y,z)=exyz2,其中z=z(x,y)是由x+y+z+xyz=0确定的隐函数,则=______.
最新回复
(
0
)