欢迎来到天天文库
浏览记录
ID:37914707
大小:243.00 KB
页数:8页
时间:2019-06-02
《C++实验五多态性、继承和派生》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验报告专业:计算机科学与技术班级:学号:姓名:课程名称:C++面向对象程序设计教程201-201学年度第学期课程类别:必修实验时间:201年月日实验名称:实验五多态性、继承和派生实验目的和要求:目的:(1)学习定义和使用类的继承关系,定义派生类;(2)熟悉不同继承方式下对基类成员的访问控制;(3)掌握在派生类中初始化基类成员的方法;(4)掌握运算符重载的基本方法;(5)掌握c++函数的重载机制;(6)掌握使用虚函数实现动态多样性。要求:(7)认真调试程序;(8)认真书写实验报告,并对结果作分析。实验软硬件要求:计算机一
2、台VC++6.0开发环境实验内容、实验过程、所遇问题及其解决方法(1)定义一个人员类Person,包括姓名、编号、性别等数据成员和用于输入、输出的成员函数,在此基础上派生出学生类Student类(增加成绩)和教师类Teacher(增加教龄),并实现对学生和教师信息的输入和输出。(2)定义一个抽象类Shape,包含纯虚函数Area()(用来计算面积)和SetShape()(用来重设形状大小)。然后派生出三角形类Triangle类、矩形Rect类、圆Circle类,分别求其面积。最后定义一个Total_Area类,计算这几个
3、形状的面积之和,各形状的数据通过Total_Area类的构造函数或成员函数来设置。编写一个完整的程序。(教材P160)实验总结及心得体会:通过本次实验,我理解了类之间的继承关系,熟悉了不同继承方式下对基类成员的访问控制,掌握了在派生类中初始化基类成员的方法,掌握了运算符重载的基本方法和C++函数的重载机制以及使用虚函数实现动态多样性。评定成绩:批阅教师:年月日附录:实验源程序及实验结果(1)定义一个人员类Person,包括姓名、编号、性别等数据成员和用于输入、输出的成员函数,在此基础上派生出学生类Student类(增加成
4、绩)和教师类Teacher(增加教龄),并实现对学生和教师信息的输入和输出。//Person.h#include//编译预处理命令usingnamespacestd;//使用命名空间std#ifndefPERSON_H#definePERSON_HclassPerson//声明类Person{protected:charname[18];//姓名intnum;//编号charsex[3];//性别public:charna[18],se[3];intnu;Person(){}//构造函数voidImp
5、ut()//输入信息{cout<<"请输入姓名:";cin>>na;cout<<"请输入编号:";cin>>nu;cout<<"请输入性别:";cin>>se;}voidSet()//设置信息{strcpy(name,na);num=nu;strcpy(sex,se);}voidShow()const;//显示信息函数定义声明};#endif//Student.h:#include//编译预处理命令usingnamespacestd;//使用命名空间std#ifndefSTUDENT_H#define
6、STUDENT_HclassStudent:publicPerson//声明类Student{protected:doublerecord;//成绩public:doublere;Student(){}//构造函数voidImput(){cout<<"请输入学生的信息:"<>re;}voidSet(){Person::Set();//调用基类成员函数Set()record=re;}voidShow()con
7、st;};#endif//Teacher.h:#include//编译预处理命令usingnamespacestd;//使用命名空间std#ifndefTEACHER_H#defineTEACHER_HclassTeacher:publicPerson{protected:intage;//教龄public:intag;Teacher(){}//构造函数voidImput(){cout<8、cout<<"请输入教龄:";cin>>ag;}voidSet(){Person::Set();//调用基类成员函数Set()age=ag;}voidShow()const;};#endif//Person.cpp:#include"Person.h"voidPerson::Show()const//显示信息函数定义
8、cout<<"请输入教龄:";cin>>ag;}voidSet(){Person::Set();//调用基类成员函数Set()age=ag;}voidShow()const;};#endif//Person.cpp:#include"Person.h"voidPerson::Show()const//显示信息函数定义
此文档下载收益归作者所有