面向对象-多态实验内容.doc
上传人:sy****28 上传时间:2024-09-12 格式:DOC 页数:3 大小:37KB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

面向对象-多态实验内容.doc

面向对象-多态实验内容.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

16 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

4.8实验内容与分析-Shape,Rect,Tri多态1内容,实验题目(有改动)根据选择项决定生成三角对象或者矩形对象,并通过多态的方法求出此对象的面积和周长。2分析提示建立一个几何形状Shape类,并设计成抽象类,类中无数据成员,只有纯虚函数getArea()求面积,getLen()求周长,display()显示类中数据的信息;建立三角型子类Tri类:属性是三边的边长,接口成员有:构造函数Tri();重载的构造函数Tri(floata,floatb,floatc);getArea()求面积,getLen()求周长,display()显示基本数据成员;建立长方形子类:属性有长和宽,接口成员有:构造函数Rect();重载的构造函数Rect(floatheight,floatwidth);getArea()求面积,getLen()求周长,display()显示基本数据成员;在主程序中动态创建一个三角形对象和一个长方形对象,并赋于父类接口,然后通过多态的方法得到动态产生对象的周长和面积,并显示这个对象的基本信息。4.9实验报告规范要求实验题目概要分析1要解决的是什么样的问题,解决这个问题的关键是什么?关键是设计矩形类和三角类的共同的抽象接口类Shape,将getArea()和getLen()和display()函数在Shape类里设置成虚函数。为了简单起间,将它们都设置成纯虚函数,即将Shape类设置成抽象类。2大致用到什么技术多态技术,本实验要求设计一个基类Shape,并设计出它的两个子类Tri和Rect,在主测试程序里产生两个子类对象交给基类指针。3类的结构从类图上可看出,需要6个文件详细设计1建立控制台项目ShapeTestProj2建立Shape类Shape.hShape.cpp(如果Shape是抽象类,那么Shape.cpp就可以不要)3建立Tri类Tri.hTri.cpp4建立Rect类Rect.hRect.cpp5建立主测试程序ShapeMain.cpp,代码如下:#include"Tri.h"#include"Rect.h"#include"Shape.h"#include<iostream.h>#include<typeinfo.h>voidmain(){Shape*p;p=newTri(3,4,5);cout<<"三角形周长:"<<p->getLen()<<endl;if(typeid(*p)==typeid(Tri)){((Tri*)p)->setSides(4,5,6);}cout<<"调整后三角形周长:"<<p->getLen()<<endl;}数据预测…实验调试…实验总结…实验思考…实验自评A.书写整洁、版面规范B.设计合理、代码齐全C.调试详细、标识清楚D.总结深刻、自评到位