首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj1,此工程中含有一个源程序文件proj1.cpp”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为: Constructor called. The value is 10 Max
请打开考生文件夹下的解决方案文件proj1,此工程中含有一个源程序文件proj1.cpp”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为: Constructor called. The value is 10 Max
admin
2019-04-24
73
问题
请打开考生文件夹下的解决方案文件proj1,此工程中含有一个源程序文件proj1.cpp”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为:
Constructor called.
The value is 10
Max nllmber is 20
Destruetor called.
注意:只能修改注释“//ERROR****found****”的下一行语句,不要改动程序中的其他内容。
1 //proj1.cpp
2 #include
3 using namespace std;
4
5 class MyClass {
6 public:
7 //ERROR ********found********
8 void MyClass(int i)
9 {value=i;cout<<"Con structor called."<
10
11 int Max(int x,int y){return x>y?x:y;}//求两个整数的最大值
12
13 //ERROR ********found********
14 int Max(int x,int y,int z=0)
15 //求三个整数的最大值
16 {
17 if(x>y)
18 return x>z?x:z ;
19 else
20 return y>z?y:z ;
21
22
23 int GetValue()const { return value;}
24
25 ~MyClass () {cout<<"De structor called."<
26
27 private:
28 int value;
29 };
30
3l int main()
32 f
33 MyClass obj(10);
34 //ERROR********found********
35 cout<<"The value is" << value()<
36 cout<<"Max number is" << obj.Max(10,20)<
37 return 0;
38 }
选项
答案
(1)MyClass(int i) (2)int Max(int x,int y,int z) (3)cout<<"The value is"<
解析
(1)考查构造函数,构造函数前不加void或其他任何类型名,直接使用MyClass(int i)即可。
(2)主要考查函数重载,在int Max(int x,int y) {return x>y?x:y;}中两个形参变量都是int型,而语句int Max(int x,inty,int z=0)的前两个形参也都是int型,第三个形参定义默认值,那么这两个Max函数在调用时它们的参数个数和参数类型都一样,因为函数重载要求形参类型或形参个数不同,所以要把int z=0改为int z,才能构成函数重载。
(3)主要考查成员函数的调用,因为value是私有成员,所以不能被类外函数直接调用,而且value()的用法也是错误的,可以使用成员函数obj.GetValue()得到value的值。
转载请注明原文地址:https://kaotiyun.com/show/hOAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
测试用例包括输入值集和______值集。
下面程序的输出结果是()。#include<iostream>#include<math.h>usingnamespacestd;classpoint{private:doubl
设有以下定义和程序:#include<iostream.h>classA1{public:voidshow1(){cout<<"classA1"<<end1;}};cla
下面关于构造函数和析构函数的描述中,错误的是()
定义如下枚举类型:enum{Monday,Tuesday,Wednesday,Thrusday,Friday=2};表达式Wednesday==Friday的值是()。
表达式x.operator+(y.operator++(0))还可以写成______。
有如下类声明:classFoo{intbar;};则Foo类的成员bar是()
下列说法中错误的是()
语句int*p=&k;定义了指针p,与这个语句等效的语句序列是
A、 B、 C、 D、 Dc++语言中析构函数为符号“~”加类名,且析构函数没有返回值和参数,故前不加void关键字。所以正确的形式应该是~Myclass()。
随机试题
在转速负反馈系统中,闭环系统的转速降减为开环系统转速降的()倍。
在PLC运行时,在第一个扫描周期为ON的特殊存储器位是()
Therearesomepeoplewhoactuallyenjoywork—infact,theylovetowork.Theyspendmanyextrahoursonthejobeachweekando
关于支气管扩张,下列正确的是
中耳传音功能障碍
抗震设计时,房屋高度是指()
建筑安装工程投资是由()组成。
精神是一种深刻而稳定的动力特征,在教师的专业精神中,()是核心。
单位违反治安管理的,处罚该主管人员。( )
METEOROLOGY:WEATHER::
最新回复
(
0
)