文档详情

太原理工大学面向对象设计实验报告——继承与派生.doc

发布:2017-07-08约2.36千字共5页下载文档
文本预览下载声明
本科实验报告 课程名称: 面向对象程序设计 实验项目: 继承与派生 实验地点: 逸夫楼302 专业班级: 学号: 学生姓名: 指导教师: 王丽娟 2013年 1月 9日 实验目的和要求 (1)掌握类的继承和派生过程; (2)掌握派生类的定义与使用; (3)掌握派生类的构造函数与析构函数的应用及调用顺序; (4)学习使用VISUAL C++调试类的继承关系的应用。 二、实验内容和原理 (1)声明一个基类BaseClass,有整数类型成员变量Number,构造基派生类DerivedClass,实现其构造函数和析构函数,完善类的功能与结构。 (2)声明一个基类SHAPE,在此基础上派生出Rectangle和Circle,二者都有GetArea()函数计算对象的面积。使用Rectangle类创建一个派生类Square;完善类的功能与结构。 三、主要仪器设备 HP 6460b;Visual Studio 2008软件环境。 操作方法与实验步骤 (1) #include stdafx.h #include iostream using namespace std; class basicclass { private: int number; public: basicclass() { coutclass basicclass is constructor...endl; } ~basicclass() { coutclass basicclass is destructor...endl; } }; class derivedclass:public basicclass { public: derivedclass() { coutderivedclass is constructor.... endl; } ~derivedclass() { coutderivedclass is destructor.... endl; } }; void main() { derivedclass m; return 0; } (2) #include stdafx.h #includeiostream using namespace std; const double PI=3.1415926; class SHAPE { public: double GetArea(){ coutshapeendl; } }; class Rectangle:public SHAPE { public: double x,y; Rectangle(double x,double y) { this-x=x; this-y=y; } double GetArea(){ coutRectangle Area: x*yendl; return 0; } }; class Circle : public SHAPE { public: double x; Circle(double x) { this-x=x; } double GetArea() { coutCircle Area: PI*x*xendl; return 0; } }; class Square : public Rectangle { public: Square(double x,double y):Rectangle(x,y) { } void GetSquare() { Rectangle::GetArea(); } }; int main() { Rectangle *r=new Rectangle(5,7); r-GetArea(); Circle *c=new Circle(3); c-GetArea(); Square *s= new Square(6,6); s-GetSquare(); delete r; delete c; delete s; } 实验数据记录和处理
显示全部
相似文档