首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj1,此工程中含有一个源程序文件proj1.cpp”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为: Constructor called. The value is 10 Max
请打开考生文件夹下的解决方案文件proj1,此工程中含有一个源程序文件proj1.cpp”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为: Constructor called. The value is 10 Max
admin
2019-04-24
34
问题
请打开考生文件夹下的解决方案文件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全国计算机二级
相关试题推荐
已知数组a中有n个元素,下列语句将数组a中从下标x1开始的k个元素移动到从下标x2开始的k个元素中,其中0<=x1<x2<n,x2+k<n,请将下列语句补充完整。for(inti=xl+k一1;i>=xl;i--)a[______]=a[i];
数据流图中带有箭头的线段表示的是()
已知一个函数的原型是:intfn(doublea);若要以5.27为实参调用该函数,应使用表达式______。
有如下类声明:classTestClass1{intk;public:voidset(intn){k=n;}intget()const{returnk;}};classT
有如下程序:#include<iostream>usingnamespacestd;{TestClass(){cout<<"BB";fun()}voidfun(){cout<<"Bf";}};c
静态数据成员是为()的数据。
下面不属于C++的预定义的流对象是()。
在下面函数的横线处填上适当的内容,使该函数能够利用递归方法求解字符串str的长度(不得使用系统提供的字符串处理函数)。intGetLen(char*str){if(______)return0;elsereturn
已知doublevar;是文件1.CPP中的一个全局变量定义,若文件2.CPP中的某个函数也需要访问,则在文件2.CPP中var应说明为______。
下列字符串中不能作为C++标识符使用的是
随机试题
铣床升降台垂直移动直线度的公差范围是:300mm测量长度上为__________mm。
FederalregulatorsWednesdayapprovedaplantocreateanationwideemergencyalert(警报)systemusingtextmessagesdeliveredto
甘麦大枣汤的主治病证是
依据《中华人民共和国森林法》,下列森林、林木和灌木丛属特种用途林的是()。
根据《建筑安装工程费用项目组成》,下列费用中,按造价形成划分,应计入措施项目费的是()。
目前我国货币流通量统计实际就是对市场上流通中的( )进行统计。
《旧制度与大革命》是法国历史学家()的著作,探讨了法国大革命爆发的深层原因。作者认为,路易十六统治时期是旧君主制最繁荣的时期,统治阶级的腐败和政治上的相对开明,反而加速了大革命的到来。
求极限
在HDLC同步传送规程中,同步字符的编码为【 】。
下列关于类与对象的说法不正确的是()。
最新回复
(
0
)