首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示矩形的CRect类,但类CRect的定义并不完整。请按要求完成下列操作,将类CRect的定义补充完成。 (1)定义私有数据成员leftPoint、topPoint、righ
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示矩形的CRect类,但类CRect的定义并不完整。请按要求完成下列操作,将类CRect的定义补充完成。 (1)定义私有数据成员leftPoint、topPoint、righ
admin
2019-01-19
90
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示矩形的CRect类,但类CRect的定义并不完整。请按要求完成下列操作,将类CRect的定义补充完成。
(1)定义私有数据成员leftPoint、topPoint、rightPoint、bottomPoint,分别用于表示矩形左上角及右下角的点的坐标,它们都是double型的数据。请在注释//********1********之后添加适当的语句。
(2)完成默认构造函数CRect的定义,指定缺省实参为0,都是double型的数据。请在注释//********2********之后添加适当的语句。
(3)定义函数体为空的析构函数。请在注释//********3********之后添加适当的语句。
(4)在main()函数中定义CRect类的实例rect2,并把rectl 的值赋给rect2。请在注释//********4********之后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
1 #include<iostream.h>
2 class CRect
3 {
4 private:
5 //********1********
6
7 public:
8 //********2********
9
10 //********3********
11
12 vold SetPoints(double,double,double,double);
13 void SetLeftPoint(double m){leftPoint=m;}
14 void SetRightP0int(double m)( rightPoint=m;}
15 void SetTopPoint(double m){topPoint=m;}
16 void SetBottomPoint(double m){bottomPoint=m;}
17 void Display();
18 };
19
20 CRect::CRect(double 1,double t,double r,double b)
21 {
22 leftPoint=1; topPoint=t;
23 rightPoint=r;bottomPoint=b;
24 }
25 void CRect::SetPointS(double 1,double t,double r,double b)
26 {
27 leftPoint=1;topPoint=t;
28 rightPoint=r;bottomP0int=b;
29 }
30 void CRect::Display()
31 {
32 cout<<’’left-top point is(’’<<leftPoint<<’’,’’<<topPoint<<’’)’’<<’\n’;
33 cout<<’’right-bottom point is(’’<<rightPoint<<’’,’’<<bottomPoint<<’’)’’<<’\n’;
34 }
35 void main() {
36 CRect rect0;
37 rect0.Display();
38 rect0.SetPoints(20,20.6,30,40);
39 rect0.Display();
40 CRect rect1(0,0,150,150);
41 rect1.SetTopPoint(10.5);
42 rect1.SetLeftPoint(10.5);
43 //********4********
44
45 rect2.Display();
46 }
选项
答案
(1)添加语句:double leftPoint,topPoint,rightPoint,bottomPoint; (2)添加语句:CRect(double leftPoint=0,double topPoint=0,double rightP0int=0,double bottomPoint=0); (3)添加语句:~CRect(){}; (4)添加语句:CRect rect2(rect1);
解析
程序中定义了一个表示矩形的类CRect,该类中定义了私有数据成员leftPoint、topPoint、rightPoint、bottomPoint,分别用于表示矩形左上角及右下角的点的坐标且它们的数据类型都是double型,类CRect有多个成员函数,SetPoints(),SetLeftPoint()函数可改变成员变量leftPoint的值,而SetRightPoint()成员函数可改变rightPoint的值,SetTopPoint()可改变topPoint的值,SetBottomPoint()改变bottomPoint的值,Display()成员函数显示成员变量的值。
(1)第1个标识下完成私有数据成员lettPoint、topPoint、rightPoint、bottomPoint的定义,均为double型的变量,故第1个标识下应添加“doubleleftPoint,topPoint,rightPoint,bottomPoint;”。
(2)构造函数完成成员变量的初始化,类CRect的默认构造函数并初始化double型私有数据成员leftPoint、topPoint、rightPoint、bottomPoint为0,故第2个标识下应添加“CRect(double leftPoint=0,doubletopPoint=0,double rightPoint=0,doublebottomPoint=0);”。
(3)析构函数名和类名一致,并在前面加“~”以和构造函数区别,该析构函数体为空,故第3个标识下应添加“~CRect(){};”,虽然该函数体为空,但是“{}”必须保留。
(4)主函数中类CRect的对象rect2是通过复制构造函数将rect1的值赋值给它实现初始化的,而rect1的初始化直接调用自定义构造函数,第4个标识下应添加“CRect rect2(rect1);”。
转载请注明原文地址:https://kaotiyun.com/show/5gAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面不正确的描述为
下面程序的运行结果为()。#include<iostream.h>voidmain(){chara=‘3’;switch(A){case’3’:cout<<“3”;case’2’:cou
请定义一个函数名为A,返回值为int,没有参数的纯虚函数的定义是______。
在C++中的实型数据分为三种类型,即单精度float、双精度double和______。
如果友元函数重载一个运算符时,其参数表中没有任何参数则说明该运算符是
若要在C盘根目录下作为二进制文件打开文件test.dat,则应该用的语句是______。
长度为n的顺序存储线性表中,当在任何位置上插入一个元素概率都相等时,插入一个元素所需移动元素的平均个数为______。
下面是“二维向量”vector2D的定义,其中作为成员函数重载的运算符“+”的功能是将两向量的分量x和y对应相加,然后返回作为相加结果的新对象;请填空补充完整。classvector2D{doublex;//x分量
当使用fstrearn流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为
有如下定义:ClassMA{intvalue;public:MA(intn=0):value(n){}};MA*ta,tb;其中MA类的对象名标识符是______。
随机试题
异烟酸-吡唑酮比色法测定粮食中氰化物的残留量的原理:氰化物在酸性溶液中蒸出后被吸收于碱性溶液中,在()溶液中,用氯胺T将氰化物转变为氯化氰,与异烟酸-吡唑酮作用生成蓝色染料,比色测定。
制造商和中间商签订协议时的注意事项:
下列不属于原发性肝癌伴癌综合征的表现是
会计人员在办理移交手续前,对已经受理的经济业务尚未填制会计凭证的,应当填制完毕;尚未登记的账目,应当登记完毕,并在最后一笔()后加盖经办人员印章。
下列银行业从业人员的行为,不符合“信息保密”准则要求的是()。
中共中央国务院《关于全面深化新时代教师队伍建设改革的意见》要求全面加强师德师风建设。下列举措中属于加强师德师风建设的有()
【2010-51】简评赫尔巴特的教学形式阶段理论。
一半径为R的球沉入水中,球面顶部正好与水面相切,球的密度为1,求将球从水中取出所做的功.
已知R0=5000,R1=8000,执行指令MOVR0,R1,LSR#3后,R0=___________【51】,R1=___________【52】。
Itisoftensaidthatthesubjectstaughtinschoolsaretooacademicinorientationandthatitwouldhemoreusefulforchildr
最新回复
(
0
)