c++重载运算符编程.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
c重载运算符编程

实验课程名称 C++面向对象语言编程 设 计 题 目 重载运算符编程 专 业 班 级 计 算 机 科 学 与 技 术班 面向对象课程设计报告 一、设计时间 2011年6月 13日-----6月17日 二、设计地点 湖南城市学院实验楼计算机机房 三、设计目的 1、《面向对象程序设计》是计算机科学与技术专业的必修专业基础课程,其实践性、应用性很强。实践教学环节是必不可少的一个重要环节。面向对象程序设计的设计目的是加深对理论教学内容的理解和掌握,使学生较系统地掌握程序设计及其在网络开发中的广泛应用,基本方法及技巧,为学生综合运用所学知识,利用软件工程为基础进行软件开发、并在实践应用方面打下一定基础。 2、要求学生在设计指导教师的帮助下自行完成各个操作环节,并能实现且达到举一反三的目的,完成一个项目解决一类问题。 3、要求学生能够全面、深入理解和熟练掌握所学内容,并能够用其分析、设计和解答类似问题;对此能够较好地理解和掌握,能够进行简单分析和判断;能编写出具有良好风格的程序;掌握面向对象程序设计的基本技能和面向对象的概念和方法。 4、同时培养学生进行分析问题、解决问题的能力;培养学生进行设计分析、设计方法、设计操作与测试、设计过程的观察、理解和归纳能力的提高。 四、设计小组成员 -09冯雅文、-10李敏、-11孙慧群 五、指导老师 贾丽媛老师 六、设计课题 一个日期类Date,包括年、月、日等私有成员。要求实现日期的基本运算,如一日期加上天数,一日期减去天数、两日期相差天数 七、基本思路及关键问题的解决方法 (一)基本思路: 1:在Date类中设计如下重载运算符函数: Date operator+(int days); 返回一日期加一天数得到的日期 Date operator-(int days); 返回一日期减去天数得到的日期 int operator-(Date b); 返回两日期相差的天数 2:在实现这些重载运算符函数调用以下私有成员函数: leap(int); 判断指定的年份是否为闰年 dton(Date ); 将指定日期转换为从0年0月0日起的天数 ntod(int); 将指定的0年0月0日起的天数转换为对应的日期 3:在main()中,实现日期的基本运算 (二)关键问题的解决办法: 1:闰年与非闰年的判断,以及各月的天数的获得问题,解决办法是设置并引用二维数组 2:日期基本问题的实现问题,解决办法是在Date类中设计重载运算符函数:Date operator+(int days)、Date operator-(int days)、int operator-(Date b),同时调用以下私有成员函数leap(int)、dton(Date )、ntod(int)得以实现 3:如何使输入的日期有效,如2011 13 34为无效日期,解决办法是在input()中设置if(month12||month1||dayday_tab[leap(year)][month-1]||year=0),判断日期是否为有效日期。 八、流程图 图 1 九、调试过程中出现的问题及相应解决办法 1:输入无效日期时,也能得到运算结果,如输入0 13 32时,程序没察觉输入错误,细 心检查发现if语句编写错误,改正后得到正确的结果; 2:重载运算符函数的编写,如求两日期相差天数时,由于编写错误,得到错误的答案, 后通过看书,查相关资料,终于改写成功。 十、课程设计心得体会 通过此次课程设计,不仅检验了我所学习的知识,也培养了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情。自己平时学习的不足和薄弱环节在设计过程中,和同学们相互探讨,相互学习,相互监督学会了合作,学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世。综合运用知识的能力,学以致用#includeiostream.h int day_tab[2][12]={{31,28,31,30,31,30,31,31,30,31,30,31}, {31,29,31,30,31,30,31,31,30,31,30,31}}; // day_tab 二维数组存放各月天数,第一行对应非闰年,第二行对应闰年 class Date { int year,month,day; int leap(int); int dton(Date ); Date ntod(int); public: Date(){} void input() { cinyearmonthday; while(month12||month1||dayday

文档评论(0)

2017meng + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档