首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示矩形的CRect类,但类CRect的定义并不完整。请按要求完成下列操作,将类CRect的定义补充完成。 (1)定义私有数据成员lefiPoint、topPoint、rightPoi
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示矩形的CRect类,但类CRect的定义并不完整。请按要求完成下列操作,将类CRect的定义补充完成。 (1)定义私有数据成员lefiPoint、topPoint、rightPoi
admin
2016-10-28
43
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示矩形的CRect类,但类CRect的定义并不完整。请按要求完成下列操作,将类CRect的定义补充完成。
(1)定义私有数据成员lefiPoint、topPoint、rightPoint、bottomPoint,分别用于表示矩形左上角及右下角的点的坐标,它们都是double型的数据。请在注释//********1********之后添加适当的语句。
(2)完成默认构造函数CRect的定义,指定缺省实参为0,都是double型的数据。请在注释//********2********之后添加适当的语句。
(3)定义函数体为空的析构函数。请在注释//********3********之后添加适当的语句。
(4)在main()函数中定义CRect类的实例rect2,并把rectl的值赋给rect2。请在注释//********4********之后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
#include<iostream.h>
class CRect
{
private:
//********1********
public:
//********2********
//********3********
void SetPoints(double,double,double,double);
void SetLeftPoint(double m){leftPoint=m;}
void SetRightpoint(double m){rightPoint=m;}
void SetToppoint(double m){topPoint=m;}
void SetBottomPoint(doublem){bottomPoint=m;}
void Display();
};
CRect::CRect(double1,double t,double r,double b)
{
leftPoint=1;topPoint=t;
rightPoint=r;bottomPoint=b;
}
void CRect::SetPoints(double1,double t,double r,double b)
{
leftPoint=1;topPoint=t;
rightPoint=r;bottomPoint=b;
}
void CRect::Display()
{
cout<<"left-top point is("<<leftPoint<<","<<topPoint<<")"<<’\n’;
cout<<"right-bottom point is("<<rightPoint<<","<<bottomPoint(<")"<<’\n’;
}
void main(){
CRect rect0;
rect0.Display();
rect0.SetPoints(20,20.6,30,40);
rect0.Display();
CRect rectl(0,0,150,150);
rectl.SetTopPoint(10.5);
rectl.SetLeftPoint(10.5);
//********4********
rect2.Display();
}
选项
答案
(1)添加语句:double leftPoint,topPoint,rightpoint,bottomPoint; (2)添加语句:CRect(double leftPoint=0,double topPoint=0,double rightPoint=0,double bottomPoint=0); (3)添加语句:~CRect(){}; (4)添加语句:CRect rect2(rect1);
解析
(1)第1个标识下完成私有数据成员lefiPoint、topPoint、rightPoint、bottomPoint的定义,均为double型的变量,故第1个标识下应添加“double leftPoint,topPoint,rightPoint,bottomPoint;”。
(2)构造函数完成成员变量的初始化,类CRect的默认构造函数并初始化double型私有数据成员leftPoint、topPoint、rightPoint、bottomPoint为0,故第2个标识下应添加“CRect(double lettPoint=0,doubletopPoint=0,double rightPoint=0,double bottomPoint=0);”。
(3)析构函数名和类名一致,并在前面加“~”以和构造函数区别,该析构函数体为空,故第3个标识下应添加“~CRect(){};”,虽然该函数体为空,但是“{}”必须保留。
(4)主函数中类CRect的对象rect2是通过复制构造函数将rect1的值赋值给它实现初始化的,而rect1的初始化直接调用自定义构造函数,第4个标识下应添加“CRectrect2(rect1);”。
转载请注明原文地址:https://www.kaotiyun.com/show/qKNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
若有语句int*point,a=4;和point=&a;下面均代表地址的一组选项是
有如下程序:#include"iostrearn.h"voidmain(){intx=1,a=0,b=0;switch(x){case0
已知fl(int)是类A的公有成员函数,p是指向成员函数fl()的指针,采用赋值,()是正确的。
对以下说明语句的正确理解是inta[10]={6,7,8,9,10};
拷贝构造函数的参数一般是
以下对C++语言函数的有关描述中,正确的是
若有以下程序:#include<iostream>usingnamespacestd;classdata{public:intx;data(intx){
下列类的定义中,有()处语法错误。classBase {public:Base(){}Base(inti){data=i;
在面向对象的程序设计中,类描述的是具有相似性质的一组【】。
关于模板下列说法不正确的是
随机试题
医院感染不包括()
男性患者,21岁,左上中切牙近中切角缺损,牙冠变色,已作根管治疗,无症状,X线片无异常发现,患者咬合关系正常。最佳修复设计为
[2011年第100题]图像中的像素实际上就是图像中的一个个光点,这光点()。
某市汽车制造厂为增值税一般纳税人,主要生产A牌汽车和中轻型商用客车,A牌汽车不含税均价每辆60万元,最高不含税售价每辆75万元。中轻型商用客车的不含税均价18万元。2012年8月发生如下几笔业务:(1)从某轮胎厂购进一批汽车轮胎,货物已验收入库
银行机构的信息披露主要分为()。
公安机关是人民民主专政的重要工具,这是公安机关的阶级属性,也是它的根本属性。()
下列句子中,加点的成语使用最恰当的一句是()。
如何理解当代艺术的商品化倾向?请结合实际加以评述。(中传2011年研)
如果缺乏奋斗精神,就不可能有较大成就。李阳有很强的奋斗精神,因此,他一定能成功。下述哪项如果为真,则上文推论最可靠?
Writeanessaybasedonthechart.Inyourwriting,youshould1)describethediagram,and2)giveyourcomments.Youshould
最新回复
(
0
)