首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了用于表示矩形的CRect类,但类CRect的定义并不完整。请按要求完成下列操作,将类CRect的定义补充完整。 (1)定义私有数据成员leftPoint、topPoint、righ
使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了用于表示矩形的CRect类,但类CRect的定义并不完整。请按要求完成下列操作,将类CRect的定义补充完整。 (1)定义私有数据成员leftPoint、topPoint、righ
admin
2013-11-15
96
问题
使用VC++6.0打开考生文件夹下的源程序文件3.cpp,其中定义了用于表示矩形的CRect类,但类CRect的定义并不完整。请按要求完成下列操作,将类CRect的定义补充完整。
(1)定义私有数据成员leftPoint、topPoint、rightPoint、bottomPoint,分别用于表示矩形左上角及右下角的点的坐标,它们都是double型的数据。请在注释1之后添加适当的语句。
(2)完成默认构造函数CRect的定义,指定默认实参为0,它们都是double型的数据。请在注释2之后添加适当的语句。
(3)定义函数体为空的析构函数。请在注释3之后添加适当的语句。
(4)在main函数中定义CRect类的实例rect2,并把rect1的值赋给rect2。请在注释4之后添加适当的语句。
注意:除在指定位置添加语句之外,不要改动程序中的其他内容。
试题程序:
#include
class CRect
{
private:
//********1********
public:
//********2********
//********3********
void SetPoints(double,double,double,double);
void SetLeftPoint(double m){1eftPoint=m;}
void SetRightPoint(double m){rightPoint=m;)
void SetTopPoint(double m){topPoint=m;}
void SetBottomPoint(double m){bottomPoint=m;}
void Display();
};
CRect::CRect(double 1,double t,double r,double b)
{
leftPoint=1;topPoint=t;
rightPoint=r;bottomPoint=b;
}
void CRect::SetPoints(double 1,double t,double r,
double b)
{
leftPoint=1;topPoint=t;
rightPoint=r;bottomPoint=b;
}
void CRect::Display()
{
cout<<"left-top point is("<<1eftPoint<<","<
<<")"<<’\n’;
cout<<"right-bottom point is("<
<
}
void main()
{
CRect rectO;
rect0.Display();
rect0.SetPoints(20,20.6,30,40);
rect0.Display();
CRect rect1(O,0,150,150);
rect1.SetTopPoint(10.5);
rect1.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)应添加“CRec reet2(rect1);”。
解析
本题在第1处完成私有数据成员leftPoint、topPoint、rightPoint、bottomPoint的定义,均为double型的变量,故第1处应添加“double leftPoint,topPoint,rightPoint,bottomPoint;”。
构造函数完成成员变量的初始化,类CRect的默认构造函数初始化double型私有数据成员leftPoint、topPoint、rightPoint、bottomPoint为0,故第2处应添加“CRect(double leftPoint=0,double topPoint=0,double rightPoint=0,double bottomPoint=0);”。
析构函数名和类名一致,并在前面加“~”以和构造函数区别,该析构函数体为空,故第3处应添加“~CRect(){}”,虽然该函数体为空,但“{}”必须保留。主函数中类CRect的对象rect2是通过复制构造函数将rect1的值赋值给它实现初始化的,而rect1的初始化直接调用自定义构造函数,第4处应添加“CRect rect2(rect1);”。
转载请注明原文地址:https://kaotiyun.com/show/EXNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
为了使类中的成员不能被类的对象通过成员操作符访问,则不能把该成员的访问权限定义为()。
在函数定义前加上关键字inline,表示该函数被定义为()。
下列C++运算符中,优先级最高的是()。
设有以下说明和定义:#include<iostream.h>Voidmain(){typedefunion{longi;intk[5];charc;}DATE;structdate{iNtcat;DATEcow;double.
有如下定义语句:inta[]={1,2,3,4,5};,则对语句int*p=9;正确的描述是()。
下面对C++重载运算符描述正确的是()。
已知一个类A,其中Fun()函数是类A的一个成员函数,A*p,a;p=&a;,则下面语句正确的是()。
下列语句中,错误的是()。
将小写字母n赋值给字符变量one_char,正确的操作是______。
随机试题
强心苷引起的传导阻滞可选用的治疗药物是
手背各指缝中的赤白肉际,左右共八穴足背各趾缝端凹陷中,左右共八穴
白前的功效是
A市药品监督管理部门在日常监督检查中,发现B药店存在违法经营行为,对其作出警告,限期整改,并处罚金3万元。B药店法人对此处罚不服,决定提出行政复议。下列不属于行政诉讼受案范围的是()
某油田开发建设工程中一新开发的区块位于西北干旱地区,区域面积30km2。新开发区块与已有区块相邻,依托已有联合站。开发建设工程设计年产油3.0×10tt,原油通过新建的70km管线输送至联合站,经脱水除气处理后外输,脱水除气过程产生的天然气不含硫,用作燃气
甲公司为工业企业,对投资性房地产采用成本模式进行后续计量。2×21年1月甲公司以出让的方式取得一宗土地使用权,支付价款为4000万元,预计使用年限为50年,准备建造写字楼,董事会作出了正式书面决议,明确表明建成后将其用于经营出租且持有意图短期内不再发生变化
以下不属于公司法人人格否认制度的适用情形为()。
某地大面积停水,影响居民正常用水,而此时有人传谣,说停水是因为化工厂有害物质泄漏,你怎么处理?
甲公司欠缴税款20万元,税务局工作人员小刘和小孙来甲公司查账时,甲公司总经理王某和其朋友李某组织一伙社会人员挡在公司门口不让税务人员进门,并将税务人员小刘打成重伤。王某的行为构成()
设u=u(x,y),v=v(x,y)有连续的一阶偏导数且满足条件:F(u,v)=0,其中F有连续的偏导数且
最新回复
(
0
)