首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.clap。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)定义类CPoint的带有两个参数的构造函数,两个变量为x、y都为int型,且缺省值为0。请在注释∥*******
使用VC6打开考生文件夹下的源程序文件modi3.clap。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)定义类CPoint的带有两个参数的构造函数,两个变量为x、y都为int型,且缺省值为0。请在注释∥*******
admin
2019-04-18
64
问题
使用VC6打开考生文件夹下的源程序文件modi3.clap。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:
(1)定义类CPoint的带有两个参数的构造函数,两个变量为x、y都为int型,且缺省值为0。请在注释∥********1********后添加适当的语句。
(2)完成类CRectangle的构造函数,给pointl和pohat2进行赋值。请在注释∥********2********后添加适当的语句。
(3)完成类CRectangle的函数GetArea(),用来计算矩形面积。请在注释∥********3********后添加适当的语句。
(4)定义CRectanglc类,拥有两个私有对象pointl和point2,类型为Point,请在注释∥********4********后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
#include
#include
class CPoint
{
public:
∥********1********
{
x=i;
y=j,
}
int GetX()
{
return x;
}
int GetY()
{
return y;
}
private:
int x,y;
};
class CRectangle
{
public:
∥********2********
{
}
int GetArea()
{
∥********3********
int height=pointl.GetY()
一point2.GetY();
return (width*he ight)?
width*height: 一width*height;
}
int GetGirth()
{
int width=abs(pointl.
GetX()一point2.GetX());
int height=abs(pointl.
GetY()一point2.GetY());
return(2*(width+height));
}
private:
∥********4********
CPoint point2 ;
};
int main()
{
CRectangle rect(5,2,13,18);
cout<
cout<
return 0;
}
选项
答案
(1)添加语句:CPoint(int i=0,int j=0) (2)添加语句:CRectangle(int top,int left, int right,int bottom):pointl(top,left),point2(right,bottom) (3)添加语句:int width:pointl.GetX()一 point2.GetX(); (4)添加语句:CPoint Dointl:
解析
(1)在第1个标识下添加构造函数定义,该构造带有两个参数X和Y的构造函数,X、Y都为int型,缺省值为0,因此第1个标识下应添加CPoint(int i=0,int i=0)。
(2)第2个标识下通过Cpoint类的构造函数来完成Crectangle类成员的初始化,在函数体内没有任何函数语句,因此其初始化过程是在初始化列表里完成的,通过调用基类的构造函数来实现两个私有对象pointl和point2的初始化,故第2个标识下应添加CRectangle(int top,int left,int right,intbottom):point 1(top,left),point2(right,bottom)。
(3)面积为矩形的长宽之积,因此先计算矩形的长和宽,可由两个Cpoint对象的X坐标相减计算得到,CPoint对象的X坐标为私有成员,只能通过公有接口函数调用获得,因此第3个标识下为“int width=pointl.GetX().point2.GetX0;”。
(4)Crectangle类的成员变量为两个Cpoint对象成员pointl和point2,第4个标识下补充pointl的定义,故第4个标识下应添加“CPoint point 1;”0
转载请注明原文地址:https://kaotiyun.com/show/QdAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
已知有函数f的定义如下:intf(){staticints=0;s+=2;returns;}则在某程序中第二次执行函数调用语句f();时,函数f的返回值是_____
阅读下面的程序:#include<iostream.h>voidmain(){intx;cin>>x;if(x++>5)cout<<x<<end1;elsecout<<x--<<e
如下程序的输出结果是______。#include<iostream>usingnamespacestd;classpumpkin{public:pumpkin(){++count;}~p
下列关于派生类构造函数和析构函数的说法中,错误的是()。
非成员函数应声明为类的______函数才能访问这个类的private成员。
一个在基类中说明的虚函数,它在该基类中没有定义,但要求任何派生类都必须定义自己的版本,此虚函数又称______。
为了取代C中带参数的宏,在C++中使用()。
在下面的类定义中,错误的语句是()。classSample{public:Sample(intval)://①~Sample();//②private:int
已知doublevar;是文件1.CPP中的一个全局变量定义,若文件2.CPP中的某个函数也需要访问,则在文件2.CPP中var应说明为______。
下列字符串中,正确的C++标识符是()。
随机试题
企业在登记材料采购业务时,通常所采用的明细账格式是()。
A、反跳现象B、停药后综合征C、类皮质醇增多症D、类固醇性糖尿病E、医源性肾上腺皮质功能不全主要症状为满月脸、向心性肥胖、皮肤紫纹、多毛等的是
A.灯心草B.绿豆C.冬虫夏草D.大蒜瓣E.荜澄茄与藏红花同贮的是
河口水质的取样,在预测水温时,要测日平均水温,一般可采用每隔( )测一次的方法求平均水温。
通用合同条款中规定了两种价格调整方式,由招标人选择使用,它们分别是()。
填隙碎石施工中,摊铺填隙料和碾压的施工方法有()。
土地使用权出让金的支付方式是()。[2004年真题]
白阳有限公司分立为阳春有限公司与白雪有限公司时,在对原债权人甲的关系上,不符合公司法律制度规定的是()。
马克思指出:立法者应该把自己看作一个自然科学家。对此,下列理解正确的是()。
下列关于常见网络版防病毒系统的描述中,错误的是
最新回复
(
0
)