首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj1,此工程中含有一个源程序文件proj1.cpp。其中位于每个注释“//ERROR ****found****”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为: Constructor call
请打开考生文件夹下的解决方案文件proj1,此工程中含有一个源程序文件proj1.cpp。其中位于每个注释“//ERROR ****found****”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为: Constructor call
admin
2020-12-21
39
问题
请打开考生文件夹下的解决方案文件proj1,此工程中含有一个源程序文件proj1.cpp。其中位于每个注释“//ERROR ****found****”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为:
Constructor called.
The value is 10
Copy constructor called.
The value is 10
Destructor called.
Destructor CaUed.
注意:只修改注释“//ERROR ****found****”的下一行语句,不要改动程序中的其他内容。
//proj1.cpp
#include
using namespace std;
class MyClass}
public:
//ERROR **********found**********
MyClass(int i)
{value=i;cout<<“Constructor called.”<<endl:}
//ERROR***********found**********
MyClass(const MyClass P)
{
value=P.value:
cout<<“Copy constructor called"<<endl:
}
void Print()
{cout<<“,The value is” <<value<<endl:}
//ERROR***********found**********
void~MyClass()
{cout<<“Destructor cMled.”<<endl;}
private:
int value;
};
int main()
{
MyClass obj1;
obj1.Print();
MyClass obj2(obj1);
ohj2.Print();
return 0;
}
选项
答案
(1)MyClass(int i=10) (2)MyClass(const MyClass&p) (3)~MyClass()
解析
本题考查MyClass类,其中涉及构造函数、复制构造函数、成员函数和析构函数。复制构造函数的参数一般都是引用调用,并且不能改变参数值,因此要在参数前加上const来限制。析构函数一般会考查delete语句,同时要注意析构函数的语法,即函数名前不能有任何类型。(1)考查构造函数参数默认值,题目要求输出语句:The value is 10,从主函数中可以看出,obj1并没有初始化,但是obj1调用Print()函数时它的值为10,由此可知构造函数的形参有默认值,且值为10,因此得出语句MyClass(int i=10)。(2)主要考查考生对复制构造函数的掌握,复制构造函数的形参都为引用,同时为了不改变形参的值要加上const,因此得出语句MyClass(const MyClass&p)。 (3)主要考查考生对析构函数的掌握,析构函数和构造函数一样,前面不能添加任何类型,要把voicl去掉。主要考查考生对构造函数、复制构造函数和析构函数的掌握:特别要注意析构函数和构造函数一样前面不能添加任何类型。
转载请注明原文地址:https://kaotiyun.com/show/FOyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下类的声明: class Base{ protected: int amount; public: Base(int n=0):amount(n){} int getAmount()const{retur
有如下说明 int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 则数值为9的表达式是
下列语句分别是不同程序中的第一个输入输出语句。若去掉其中的“<<left”,输出效果将发生变化的是
有如下程序: #include<iostream> using namespace std; class Demo { public: Demo(){ cout<<"def
如下函数的作用是以双倍行距输出文件: void double_space(ifstream& f, ofstream& t){ char c; while (______) { ______;
下列运算符函数中肯定不属于类FunNumber的成员函数的是
下列有关继承和派生的叙述中,正确的是
下面不属于结构化程序设计风格的是
有如下函数模板:template<classT>Tsquare(Tx){returnx*x;}其中T是()。
线性表的长度为n。在最坏情况下,比较次数为n一1的算法是
随机试题
长诗《浮士德》是诗人_____的作品。()
患儿7岁,生病前体重21kg,近2天来频繁呕吐及腹泻。检查:体重19.5kg。四肢凉,尿少。经静脉补液后四肢转暖,估计其血压正常。按公式计算该年龄的正常收缩压为
患者,男,24岁。身热,微恶风,头胀痛,汗出不畅,鼻塞涕黄,咳嗽痰黏,咽喉肿痛,口渴喜饮,舌尖红,苔薄黄,脉浮数者,治法宜
高位截瘫患者排尿障碍表现为
不属于日受体阻断药的是
某市法院审理被告人赵某故意伤害案,为其指定了辩护律师。庭审中,赵某拒绝辩护律师为其辩护,合议庭的下列哪些做法是正确的?()
关税配额是指关税的税率随着进口商品价格的变动而反方向变动的一种税率形式。()
下列做法符合我国相关法律规定的是()。
下列句子中没有使用比喻修辞手法的一句是__________。
数据库管理系统中的安全控制模块属于()。
最新回复
(
0
)