- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2015-教学大纲-《面向对象程序设计实验》10.doc
《面向对象程序设计实验》课程教学大纲
课程名称 课程编号 课程类别 编制者 编制日期 面向对象程序设计实验 1920085 选修 车建华 2015.02 第十次实验:
继承与派生
1.学时:2课时;
2.实验类型:设计性实验
3.实验目的
掌握多继承和派生类的方法
(2)掌握初始化基类成员的方法
(3)掌握定义虚基类的方法
4.实验内容与步骤
(1)程序功能简介
定义一个日期(年、月、日)的类和一个时间(时、分、秒)的类,并由这两个类派生出日期和时间类。主函数完成基类和派生类的测试工作。定义一个描述日期的类,构造函数完成年、月、日的初始化,包含一个重新设置日期的成员函数,一个获取日期的成员函数。该类可定义为:
class Date{
int Year,Month,Day; //分别存放年、月、日
public:
Date(int y=0, int m=0,int d=0)
{
Year= y; Month = m; Day = d;
}
void SetDate(int ,int ,int );
void GetDate(char *);
};
函数SetDate完成数据成员的赋初值。函数GetDate要将整数年、月、日变换成字符串后,存放到参数所指向的字符串中。把一个整数变换成字符串可通过库函数:
char * _itoa(int a , char *s, int b);
来实现,参数a为要变换的整数,b为数制的基数(如10,表示将a转换为对应的十进制的字符串),转换的结果存放到s所指向的字符串中。函数返回变换后字符串的首指针。该成员函数可以是:
void Date::GetDate(char *s)
{
char t[20];
_itoa(Year,s,10); //将年变换为字符串表示
strcat(s,/); //年、月、日之间用“/”隔开
_itoa(Month,t,10); //将月变换为字符串表示
strcat(s,t); //将年、月字符串拼接
trcat(s,/);
_itoa(Day,t,10);
strcat(s,t); //将年、月、日拼接成一个字符串
}
定义描述时间的类与描述日期的类类同,然后用这二个类作为基类,公有派生出描述日期和时间的类。
将类DateTime改为由基类Date和Time私有派生,程序能否正确编译和执行,为什么?
2.上机实验题二
设计一个描述儿童、成人和老人的类,儿童分为学龄前和学龄期儿童,成人有工作,老人已退休。提取共性作为基类,并派生出满足要求的各个类及每一个类上的操作。设计一个完整的程序,并完成测试程序的正确性。
描述一个人的基本特性包括:姓名,出生日期,出生地。把这些基本特性定义为一个基类Base。不论学龄前还是学龄期儿童都要有监护人。为此在类Base的基础上派生出类AllChil,再把类AllChil作为基类派出学龄前和学龄期儿童的类。把类Base作为基类,分别派生出成人类和老人类。
完成程序的正确性测试工作。
项目选做
设计程序从学生类中派生出硕士研究生和博士研究生类。.实验目的
的
(2)掌握的方法
(3)积累复杂程序设计、编写、调试和测试的
4.实验内容与步骤
(1)程序功能简介
定义一个日期(年、月、日)的类和一个时间(时、分、秒)的类,并由这两个类派生出日期时间类主函数完成基类和派生类的测试工作。定义一个描述日期的类,构造函数完成年、月、日的初始化,包含重新设置日期获取日期的成员函数。该类定义:
class Date{
int Year,Month,Day; //分别存放年、月、日
public:
CDate();
CDate(const CDate d);
CDate(int y=0, int m=0,int d=0)
{
Year= y; Month = m; Day = d;
}
//void SetDate(int ,int ,int );
//void GetDate(char *);
inline void SetYear(int y);
inline void SetMonth(int m);
inline void SetDay(int d);
inline void GetYear(int y);
inline void GetMonth(int m);
inline void GetDay(int d);
void ShowDate();
char* GetWeekNameofDate(const CDate d);
char* GetMonthNameofDate(const CDate d);
bool IsLeapYear(int year);
bool operator (cons
您可能关注的文档
最近下载
- 教师资格证初中数学教案汇总.pdf VIP
- 海外留学生体育活动参与情况与身体素质的研究教学研究课题报告.docx
- 教科版新版科学三年级上册《8.天气的影响》教案.docx VIP
- 如何设计护理研究方案.pptx VIP
- 英语演讲技巧与实践 课件 Chapter1 Understanding Public Speaking.pptx
- 低空与低空经济分析与研究.pptx VIP
- 成长英语教师用书 进阶篇PPTUnit 7.pptx VIP
- 农村宅基地培训.pptx VIP
- 变电站设备巡视检查及验收培训课件[1].ppt VIP
- 《保险基础与实务》(徐昆第4版) 课件 第二章 保险原则与保险合同.pptx
文档评论(0)