首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modil.cpp,但该程序运行时有错,请改正main()函数中的错误,使程序的输出结果如下: Constructor. Default constructor. Area is 12
使用VC6打开考生文件夹下的源程序文件modil.cpp,但该程序运行时有错,请改正main()函数中的错误,使程序的输出结果如下: Constructor. Default constructor. Area is 12
admin
2017-11-27
24
问题
使用VC6打开考生文件夹下的源程序文件modil.cpp,但该程序运行时有错,请改正main()函数中的错误,使程序的输出结果如下:
Constructor.
Default constructor.
Area is 12
Area is 0
Area is 12
注意:错误的语句在//*****error******的下面,修改该语句即可。
#include
class CRectangle
{
private:
double length,width;
public:
CRectangle()
{
cout<<"Default
constructor.\n";
}
CRectangle(double 1,double w)
{
length=1;width=w;
cout<<"Constructor .\n";
}
void Set(double 1,double w)
{
this->length=1;
this->width=w;
}
void GetArea()
{
cout<<"Area is"<
width<
}
}
void main()
{
CRectangle Rect1(3.0,4.0);
//*****error******
CRectangle Rect2(1);
//*****error******
Rect1.GetArea();
//*****error******
Rect2.Set(0);
Rect2.GetArea();
Rect3.GetArea();
}
选项
答案
(1)CRectangle Rect2; (2)CRectangle Rect3(Rect1); (3)Rect2.Set(0,0);
解析
(1)构造函数CRectangle()不带有参数,CRectangle(double1,double w)带有2个参数,在创建对象时会自动调用构造函数,但是参数必须匹配,第1个标识下定义Rect2对象时,有一个参数,而类CRectangle()并没有重载一个参数的构造函数,编译后出错,因此第1标识下应改为“CRectangle Rect2;”。
(2)Rect3.GetArea()输出的结果和Rect1.GetArea()输出结果一致,因此对象Rect3和对象Rect1两者具有相同的length和width值,除定义Rect3对象之外没有改变Rect31的length和width值,因此Rect3成员变量的初始化是通过拷贝构造函数类实现的,即用Rect1对象去初始化Rect3,因此第2个标识下应改为“CRectangle Rect3(Rect1);”。
(3)Rect2.GetArea()的输出结果为0,说明Rect2的成员变量length和width值至少一个为0,而Set()函数必须有两个参数,这里Rect2.Set(0)参数不匹配,应改为“Rect2.Set(0,0);”或者“Rect2.Set(0,5)”,两个参数当中至少一个为0即可。
转载请注明原文地址:https://kaotiyun.com/show/NDAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列对派生类的描述中,()是错误的
有以下程序:#include<iostresm.h>voidmain(){intn;cin>>n;if(n++<10)cout<<n<<endl;else
若执行下面程序段后的输出为:345,请填空。inta,b=3,c=5;a=b<c?【 】:c++;cout<<a<<b<<c;
下列语句中,输出与众不同的是
以下程序不用第三个变量实现将两个数进行对调的操作,划线处应为main(){inta,b;scanf("%d%d",&a,&B).;cin>>a>>b;cout<<"a="<<a
下面对宏定义的描述中不正确的是
如果一个工人可管理多个设备,而一个设备只被一个工人管理,则实体“工人”与实体“设备”之间存在______关系。
为了培养良好的程序设计风格,下列描述中正确的是
下列关系运算中,能使经运算后得到的新关系中属性个数多于原来关系中属性个数的是
随机试题
失血性休克血压下降早期主要与
假定某采用分页式存储管理的系统中,主存容量为1M,被分成256块,块号为0,1,2,…,255。某作业的地址空间占4页,具页号为0,1,2,3,被分配到主存的第2,4,1,5块中。回答:把作业中每一页分到的主存块中的起始地址填入下表。(提示:页面的
对于神经纤维传导速度的叙述,恰当的是
为中、重度营养不良患儿补液时,下列哪项不正确()
粗面内质网和滑面内质网的区别在于
修复体应达到的质量标准是
头皮撕脱伤的特点下列哪项不对
皮格马利翁效应体现了教师的()对学生的影响。
下列关于路由器技术指标的描述中,正确的是()。
WhenBobandhisfriendscame,we()oursupperthen.
最新回复
(
0
)