首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modil.cpp,但该程序运行时有错,请改正main()函数中的错误,使程序的输出结果如下: Constructor. Default constructor. Areais 12 A
使用VC6打开考生文件夹下的源程序文件modil.cpp,但该程序运行时有错,请改正main()函数中的错误,使程序的输出结果如下: Constructor. Default constructor. Areais 12 A
admin
2020-06-29
47
问题
使用VC6打开考生文件夹下的源程序文件modil.cpp,但该程序运行时有错,请改正main()函数中的错误,使程序的输出结果如下:
Constructor.
Default constructor.
Areais 12
Area is 0
Area is 12
注意:错误的语句在∥********error********的下面,修改该语句即可。
#include
class CRectangle
{
private:
double length l 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 Rectl(3.0,4.0);
∥********error********
CRectangle Rect2(1);
∥********error********
CRectangle Rect3;
Rectl.GetArea();
∥********error********
Rect2.Set(0);
Rect2.GetArea();
Rect3.GetArea();
}
选项
答案
(1)CRectangle Rect2; (2)CRectangle Rect3(Rectl); (3)Rect2.Set(0,0);
解析
(1)构造函数CRectangle()不带有参数,CRectangle(double l,double w)带有2个参数,在创建对象时会自动调用构造函数,但是参数必须匹配,第1个标识下定义Rect2对象时,有一个参数,而类CRectangle0中并没有重载一个参数的构造函数,编译后出错,因此第l标识下应改为“CRectangle Rect2;”。
(2)Rect3.GetArea0输出的结果和Rect1.GetArea0输出结果一致,因此对象Rect3和对象Rectl两者具有相同的length和width值,除定义Rect3对象之外没有改变Rect31的length和width值,凶此Rect3成员变量的初始化是通过拷贝构造函数类实现的,即用Rectl对象去初始化Reet3,因此第2个标识下应改为“CRecmngle Rect3(Rectl);”。
(3)Rect2.GetArea0的输出结果为0,说明Rect2的成员变量length和width值至少一个为0,而Set()函数必须有两个参数,这里Rect2.Set(0)参数不匹配,应改为“Rect2.Set(0,0);”或者“Rect2.Set(0,5)”,两个参数当中至少一个为0即可。
转载请注明原文地址:https://kaotiyun.com/show/pIyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下头文件:intf1();staticintf2();classMA{public:intf3();staticintf4();};在所描述的函数中,具有隐含的this指针的是()。
下列有关类继承的叙述中,错误的是()。
下列关于模板的叙述中,错误的是
有如下类声明:classHow{intk;public:friendvoidshow();};则类How所拥有的构造函数的数量是
下列关于对象初始化的叙述中,正确的是
求n阶勒让德多项式的递归函数定义如下:doubleP(doublex,intn){if(n==0)return1;if(n==1)returnx;
有如下函数模板:templateTsquare(Tx){returnx*x;}其中的参数T是
若要对类Value中重载的类型转换运算符long进行声明,下列选项中正确的是
派生类的成员函数不能访问的基类成员是
随机试题
根据《最高人民法院关于雇工合同应当严格执行劳动保护法规问题的批复》,无过错责任原则只适用于用人单位对()的民事赔偿中。
患者,男,28岁,患尿毒症晚期,拟接受肾移植手术。兄弟间器官移植引起排斥反应的物质是
肠梗阻解除的标志是
关于无机结合料稳定材料击实试验方法,请回答以下问题。关于无机结合料稳定材料击实试验准备,说法正确的有()。
某机电安装公司承担北方某城市锅炉房安装工程,主体设备为三台蒸发量25t/h、蒸汽压力为2.5MPa的散装工业锅炉。开工前,项目部根据锅炉房安装工程施工组织设计,进行全面的质量策划,并指令专业工程师编制质量控制程序。施工过程检查中,发现某焊工的合格证已过有
公路施工现场触电事故预防管理措施有()。
对尚未构成走私罪的违法当事人海关可处以()行政处罚。
选题策划的基本步骤不包括()。
社会工作者调动服务对象自身的能力和资源,发挥服务对象的潜在能力,促使服务对象发生有效改变。这是社会工作者扮演的()角色。
—Readthetextontheoppositepageaboutrunningmeetings.—Inmostofthelines34-45thereisoneextraword.Itiseithe
最新回复
(
0
)