实验报告3 继承与多态.docx
- 文档编号:5163378
- 上传时间:2022-12-13
- 格式:DOCX
- 页数:16
- 大小:36.58KB
实验报告3 继承与多态.docx
《实验报告3 继承与多态.docx》由会员分享,可在线阅读,更多相关《实验报告3 继承与多态.docx(16页珍藏版)》请在冰豆网上搜索。
实验报告3继承与多态
计算机课程实验报告
—学年度第一学期
系别:
数学与计算机科学学院
实验课程
面向对象程序设计
班级
级计算机科学与技术
学号
姓名
蔡兴明
指导教师
马学梅
实验题目
继承与多态
(一)
日期
2012-9-29
实验目的
及要求
、理解继承在面向对象程序中的重要作用、继承和派生的概念;
、掌握通过继承派生一个新类的方法;
、理解多态的概念、运算符重载的概念、虚函数的作用;
、学习实现多态,掌握几种常用运算符的重载;;
、掌握虚函数的定义和使用方法;
、简单面向对象程序的编写
实验内容及具体步骤:
内容:
函数重载
()构造函数重载,运行以下程序,
<>
{:
();
();
();
();
();
:
;
};
:
:
(,)
{;;;}
:
:
()
{;;;}
:
:
()
{<<;
(>)<<“”<<<<“”;
(<)<<<<“”;
<<“\”;;
}
()
{;
;
*;
}
()
{;
;
*;
}
()
{
();
();
();
();
();
.();
();
;
}
给出输出结果,分析的用途.在此程序的基础上实现运算符””和”“的重载
是自身的地址,但是*就是自身了.是按值回返了.如果函数的回返值是带有号的,那么回返值就是引用了
构造出五个公共类函数,此函数在运行时没有出现问题,但是我经过仔细阅读理解程序的过程中,主要对这个的用途和用法在网上查阅学习了下,一种情况就是,在类的非静态成员函数中返回类对象本身的时候,直接使用*;另外一种情况是当参数与成员变量名相同时,如>(不能写成)。
()运算符重载:
以下程序要求实现运算符的前置和后置重载,但实际上并没有实现。
试分析原因,并作出修改,以实现此功能。
<>
{;
:
();
();
();
();
};
:
:
(){;;}
:
:
()
{;;;;}
:
:
()
{;;;;}
()
{<<““<<<<;}
()
{
;
();
;
;
();
}
内容:
重载<,>,:
设计字符串类,用来存放不定长的字符串,重载运算符“”,“>”,“<”,用于两个字符串的大于、小于和等于的比较运算。
提示:
()属于双目运算符,在重载双目运算符时,函数中应该有两个参数。
()类成员变量应为字符型指针;
()多个构造函数的定义;
测试数据:
<>
{
:
();
();
();
(*);
>();
<();
();
();
();
:
*;
};
()
{
;
}
()
{
[()];
()
{
();
}
}
(*)
{
[()];
()
{
();
}
}
>()
{
(()>)
;
;
}
<()
{
(()<)
;
;
}
()
{
(())
;
;
}
()
{
();
("")("")("");
<<":
"();
<<":
"();
<<":
"();
(>)
{
<<"大于";
<<;
}
(<)
{
<<"小于";
<<;
}
{
<<"等于";
<<;
}
;
}
此程序首先构造了个函数()();()(*)>()<()();然后定义字符串,再给字符串赋值为空,再分别用<,>重载函数比较运算字符串,最后通过()函数输出结果。
内容.继承
<>
{
:
;
;
:
(,);
();
();
};
(,)
{
>;
>;
}
()
{
;
}
()
{
;
}
:
{
:
;;;
:
(,,);
();
};
(,,):
(,)在此初始化基类
{
;
}
()
{
;
}
()
{
(,,);
<<""<<()<<;
<<""<<()<<;
<<""<<()<<;
}
此程序中父类有两个私有类变量,三个公共类函数,类是类的子类,从而调用子类实现了函数的继承;此程序代码在运行的过程中没有遇到任何的错误;从函数中我更深的了解到继承的概念以及如何使用,继承是存在于面向对象程序设计中的两个类之间的一种关系,是面向对象程序设计方法的一个重要手段,通过继承可以更有效地组织程序结构,明确类间的关系,充分利用已有的类来完成更复杂、更深入的开发。
内容多态
<>
{
:
()
{
;
}
()
{
<<""<<;
}
:
;
};
:
{
:
()
{
<<""<<;
}
};
:
{
()
{
<<""<<;
}
};
{
:
()
{
<<""<<;
}
};
()
{
;
;
;
;
*[]{};
(<)
[]>();
}
.实验结论:
此函数首先构造两个公共类函数,一个私有类变量,然后依依实现函数;此程序代码运行时出现几个问题,经过查询网络,''就是指是输入程序的时候键入的是全角符号的空格,注意切换全半角为半角状态,将该行程序重新键入就可以了。
还有一个小问题就是将中的写成了大写,改过来后就运行成功了;
:
''
:
''
:
''
:
''
:
'':
:
'':
'*''*'
内容、重载加减法
设计类
、成员变量:
、、;
、多个构造函数:
显示函数:
()
、重载运算符,模拟钟表走动,每次走一秒,每秒进一分钟,秒又从开始计算;每分钟进一小时,分钟从开始计算。
提示:
、运算符为单目运算符,运算符重载函数只有一个参数,如果运算符重载函数为成员函数,还可省略此参数;
、有两种使用方式:
前置自增运算符和后置自增运算符,为了区别二者,在自增运算符重载函数中,增加一个型形参,即为后置运算符函数;
测试数据:
、时间:
:
:
、时间:
:
:
程序代码:
<>
{
:
;
:
(){}
(){
;
;
;
}
(){;}
(){;}
(){;}
();
();
(){
<<<<":
"<<<<":
"<<<<;
}
};
(){
;
;
;
;
;
}
(){
;
(>){
;
}
;
(>){
;
}
;
(>){
;
}
;
}
()
{
;
();
();
();
();
();
;
();
;
();
;
();
;
}
此程序编程时构造了三个私有的整形变量,八个公共类函数,其中()、()、()三个函数只是分别返回,,;()函数就是时针,分针和秒针分别到时开始重新重计时;编此程序时我查阅参考许多程序,因此对函数的重载有了更深的理解,对重载的用法及用途也更加的熟练。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验报告3 继承与多态 实验 报告 继承