1、实验报告3 继承与多态计 算 机 课 程 实 验 报 告学年度 第一 学期系别:数学与计算机科学学院实验课程面向对象程序设计班 级级计算机科学与技术学 号姓 名蔡兴明指导教师马学梅实验题目继承与多态(一)日 期2012-9-29 实验目的及要求、理解继承在面向对象程序中的重要作用、继承和派生的概念;、掌握通过继承派生一个新类的方法;、理解多态的概念、运算符重载的概念、虚函数的作用;、学习实现多态,掌握几种常用运算符的重载; 、掌握虚函数的定义和使用方法;、简单面向对象程序的编写实验内容及具体步骤:内容:函数重载() 构造函数重载 ,运行以下程序, : ( ); ( ); ( ); ( ); (
2、 );: , ;: ( , ) ; ; ; : ( ) ; ; ; : ( ) ) “”“”; ( ) “”; (不能写成 )。() 运算符重载:以下程序要求实现运算符的前置和后置重载,但实际上并没有实现。试分析原因,并作出修改,以实现此功能。 ; : ( ); ( ); ( ); ( ); ;: ( ) ; ; : ( ) ; ; ; ; : ( ) ; ; ; ; ( ) “; ( ) ; ( ); ; ; ( );内容:重载,: 设计字符串类,用来存放不定长的字符串,重载运算符“”,“”,“”,用于两个字符串的大于、小于和等于的比较运算。提示:()属于双目运算符,在重载双目运算符时,函数
3、中应该有两个参数。()类成员变量应为字符型指针;()多个构造函数的定义;测试数据: : (); (); ( ); ( *); ( ); ( ) () ; ; ( ) () ; ; ( ) () ; ; () ( ); ( )( )( ); :(); :(); ) 大于; ; () 小于; ; 等于; ( ) ( ) ( );然后定义字符串,再给字符串赋值为空,再分别用重载函数比较运算字符串,最后通过 ()函数输出结果。内容 .继承 : ; ; : ( , ); ( ); ( );( , ) ; ; ( ) ; ( ) ; : : ; ; ; : ( , , ); ( );( , , ) : (
4、, ) 在此初始化基类 ; ( ) ; ( ) (, , ); ( ); ( ); ( );此程序中父类有两个私有类变量,三个公共类函数,类是类的子类,从而调用子类实现了函数的继承;此程序代码在运行的过程中没有遇到任何的错误;从 函数中我更深的了解到继承的概念以及如何使用,继承是存在于面向对象程序设计中的两个类之间的一种关系,是面向对象程序设计方法的一个重要手段,通过继承可以更有效地组织程序结构,明确类间的关系,充分利用已有的类来完成更复杂、更深入的开发。内容 多态 : ( ) ; ( ) ; : ; : : ( ) ; ; : ( ) ; ; : () ; ; () ; ; ; ; * ;(
5、 ();.实验结论:此函数首先构造两个公共类函数,一个私有类变量,然后依依实现函数;此程序代码运行时出现几个问题,经过查询网络, 就是指是输入程序的时候键入的是全角符号的空格,注意切换全半角为半角状态,将该行程序重新键入就可以了。还有一个小问题就是将中的写成了大写,改过来后就运行成功了; : : : : : : : : * *内容、重载加减法 设计类 、成员变量: 、;、多个构造函数:显示函数:()、重载运算符,模拟钟表走动,每次走一秒,每秒进一分钟,秒又从开始计算;每分钟进一小时,分钟从开始计算。提示:、运算符为单目运算符,运算符重载函数只有一个参数,如果运算符重载函数为成员函数,还可省略此
6、参数;、有两种使用方式:前置自增运算符和后置自增运算符,为了区别二者,在自增运算符重载函数中,增加一个型形参,即为后置运算符函数;测试数据:、时间:、时间:程序代码: : ;: () ( ) ; ; ; () ; () ; () ; ( ); ( ); () :) ; ; () ; ; () ; ; () ; (); (); (); (); (); ; (); ; (); ; (); ;此程序编程时构造了三个私有的整形变量,八个公共类函数,其中 ()、 ()、 ()三个函数只是分别返回,; ( )函数就是时针,分针和秒针分别到时开始重新重计时;编此程序时我查阅参考许多程序,因此对函数的重载有了更深的理解,对重载的用法及用途也更加的熟练。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1