首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
有以下程序: #include using namespace std; class TestClass { public: TestClass(int n){number=n;} //拷贝构
有以下程序: #include using namespace std; class TestClass { public: TestClass(int n){number=n;} //拷贝构
admin
2012-12-29
77
问题
有以下程序:
#include
using namespace std;
class TestClass
{
public:
TestClass(int n){number=n;}
//拷贝构造函数
TestClass(TestClass&other){number=other.number;}
~TestClass(){}
private:
int number;
};
TestClass fun(TestClass p)
{
TestClass temp(p);
return temp;
}
int main()
{
TestClass obj 1(10),obji2(0);
TestClass obj3(obj1);
obj2=fun(obj3);
return 0:
}
程序执行时,TestClass类的构造函数被调用的次数是( )。
选项
A、2
B、3
C、4
D、5
答案
C
解析
obj1(10)执行一次构造函数,obj2(0)也执行一次构造函数;obj3(obj1)以obj1作为参数执行一次构造函数;fun(obj3)中的temp(p)将执行一次构造函数,而fun本身是以按值传递参数,形参在fun函数内也要分配独立的空间,所以也要执行一次构造函数,其返回结果也是TestClass类型的,同样需要执行一次构造函数,所以一共要执行4次。
转载请注明原文地址:https://www.kaotiyun.com/show/arVp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面描述中不属于软件需求分析阶段任务的是()。
if语句的基本形式是:if(表达式)语句,以下关于“表达式”值的叙述中正确的是()。
设栈的存储空间为S(1:m),初始状态为top=m+1。经过一系列入栈与退栈操作后,top=m。现又在栈中退出一个元素后,栈顶指针top值为()。
算术运算符和圆括号有不同的运算优先级,对于表达式:a+b+c*(d+e),关于执行顺序,以下说法正确的是()。
下面关于编译预处理的命令行中,正确的是()。
下面选项中不是关系数据库基本特征的是()。
按照C语言规定的用户标识符命名规则,不能出现在标识符中的是()。
数据流图中带有箭头的线段表示的是()。
假定已建立以下数据链表结构,且指针p和q已指向如下图所示的结点:则以下选项中可将q所指结点从链表中删除并释放该结点的语句是()。
在E-R图中,用来表示实体的图形是()。
随机试题
Theworkseemedeasyatfirstbutit______tobequitedifficult.
Throughouthistorymanhashadtoacceptthefactthatalllivingthingsmustdie,butpeoplenowlivelongerthanthey【36】.Yet
A.脾主运化水谷B.脾主运化水液C.脾主统血D.脾气主升从脾论治内脏下垂的理论依据的是
下述关于胃X线解剖知识,错误的是
头孢噻酚钠等头孢菌素族抗生素药物的鉴别反应氨苄西林的特殊杂质
某建筑设计公司工程师张某接受公司指派的任务,为该公司承揽设计的某住宅楼绘制了工程设计图。按照著作权法的规定,有关该工程设计图著作权的下列表述中,正确的是()。
现代公共行政的首要目标是公平正义。()
党的十八大报告中指出,建设生态文明,是关系人民福祉、关乎民族未来的长远大计。面对资源约束趋紧、环境污染严重、生态系统退化的严峻形势,必须树立的生态文明理念有()
WhendidMissWangmovetoherapartment?
It’snavelgazingtimeagain,thatstretchoftheyearwhenmanyofusturnourattentioninwardandthinkabouthowwecanimpr
最新回复
(
0
)