1、 实验课程名称实验课程名称 C+面向对象语言编程 设设 计计 题题 目目 重载运算符编程 专专 业业 班班 级级 面向对象课程设计报告面向对象课程设计报告 一一、设计时间设计时间 2011 年 6 月 13 日-6 月 17 日 二二、设计地点设计地点 湖南城市学院实验楼计算机机房 三三、设计目的设计目的 1、 面向对象程序设计 是计算机科学与技术专业的必修专业基础课程, 其实践性、 应用性很强。 实践教学环节是必不可少的一个重要环节。 面向对象程序设计的设计目的 是加深对理论教学内容的理解和掌握, 使学生较系统地掌握程序设计及其在网络开发中 的广泛应用,基本方法及技巧,为学生综合运用所学知识
2、,利用软件工程为基础进行软 件开发、并在实践应用方面打下一定基础。 2、要求学生在设计指导教师的帮助下自行完成各个操作环节,并能实现且达到举 一反三的目的,完成一个项目解决一类问题。 3、要求学生能够全面、深入理解和熟练掌握所学内容,并能够用其分析、设计和 解答类似问题;对此能够较好地理解和掌握,能够进行简单分析和判断;能编写出具有 良好风格的程序;掌握面向对象程序设计的基本技能和面向对象的概念和方法。 4、同时培养学生进行分析问题、解决问题的能力;培养学生进行设计分析、设计 方法、设计操作与测试、设计过程的观察、理解和归纳能力的提高。 四四、设计小组成员设计小组成员 五五、指导老师指导老师
3、六六、设计课题设计课题 一个日期类 Date,包括年、月、日等私有成员。要求实现日期的基本运算,如一日 期加上天数,一日期减去天数、两日期相差天数 七七、基本思路及关键问题的解决方法、基本思路及关键问题的解决方法 (一)基本思路: 1:在 Date 类中设计如下重载运算符函数: Date operator+(int days); 返回一日期加一天数得到的日期 Date operator-(int days); 返回一日期减去天数得到的日期 int operator-(Date 返回两日期相差的天数 2:在实现这些重载运算符函数调用以下私有成员函数: leap(int); 判断指定的年份是否为闰
4、年 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 / day_tab 二维数组存放各月天数,第一行对应非闰年,第二行对应闰年 class Date int year,month,day; int leap(int); int dton(Date Date ntod(int); public: Date() void input() cinyearm