资源描述:
《华科C++第七次上机作业.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第七次上机作业1、范例:设计并测试一个矩形类(Rectangle)。属性为矩形的左下角与右上角的坐标,矩形水平放置。操作为计算矩形的周长和面积。2、#include3、#include4、usingnamespacestd;5、classRectangle{6、doubleleft,top;7、doubleright,bottom;8、public:9、Rectangle(doublel=0,doublet=0,doubler=0,doubleb=0);10、~Rectangle(){};11、voidAssign(
2、doublel,doublet,doubler,doubleb);12、voidShow();13、doubleArea();14、doublePerimeter();};15、Rectangle::Rectangle(doublel,doublet,doubler,doubleb){16、left=l;top=t;17、right=r;bottom=b;}18、voidRectangle::Assign(doublel,doublet,doubler,doubleb){19、left=l;top=t;20、right=r;bottom=b;}21、
3、voidRectangle::Show(){22、cout<<"left-toppointis("<4、fabs(bottom-top));29、}30、intmain(){31、Rectanglerect;32、rect.Show();33、rect.Assign(100,200,300,400);34、rect.Show();35、Rectanglerect1(0,0,200,200);36、rect1.Show();37、rect1.Assign(100,200,300,400);38、rect1.Show();39、cout<<"Ãæ»ý"<5、0、cout<<"Ãæ»ý"<6、需编写类似功能的一般函数是需要带参数(形参)的。而在此处作为类的成员函数又不需要带参数。思考为什么?答:构造函数是隐式调用的(3)理解voidAssign(doublel,doublet,doubler,doubleb);函数的作用。将Rectangle(doublel=0,doublet=0,doubler=0,doubleb=0);改为Rectangle(doublel,doublet,doubler,doubleb);这时,有人认为Rectangle(doublel,doublet,doubler,doubleb)和voidAssign(dou
7、blel,doublet,doubler,doubleb)的功能相同,那么Assign函数能否去掉呢?请试一试,结果会怎样?答:不能,结果无法运行。2、定义一个圆类(Circle),要求用两种方法定义:方法一:要求属性为半径,操作为计算圆的周长和面积。#include#includeusingnamespacestd;constdoublePI=3.14;classCircle{private:doubleRadius;public:Circle(doubler=0);~Circle(){};voidAssign(d
8、oubler);doublezc();doublemj();};Circle::Circle(doubler