- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
104303李优实验5报告(最终版)40
北京电子科技学院(BESTI)
实验报告
课程: 面向对象程序设计 班级: 1043班 姓名: 李优 学号: 104303 成绩: 指导教师: 徐日 实验日期: 2011.12.3 实验密级: 预习程度: 实验时间: 12:00-2:30 仪器组次: F 必修/选修: 选修 实验序号: 5 实验名称: 实验五 继承与派生 实验目的与要求:
使学生掌握C++语言的继承与派生的基础编程;
培养学生具有运用C++语言编程解决的能力,提高学生的计算机编程能力;
引导和培养学生具有认证严谨的实验态度和勇于实践的学习精神。
实验仪器:
名称
型号
数量
微机
Lenovo TinkCentre 8000
1
一、实验内容
1.类Point、类Circle 和类 Cylinder:
实验题目:
首先定义类Point,然后定义类Point的公有派生类Circle,在定义类Circle的公有派生类Cylinder。
类Point的数据成员int型的x和y,用于表示点的坐标位置,有成员函数p_show()、构造函数和析构函数、p_set(),p_show()用于娴熟输出点的坐标,p_set()用于设置x和y的值。
类Circle有新增私有数据成员float型的h和double型的s,表示圆的半径和面积,有成员函数c_area用于计算圆的面积并对s赋值,有成员函数c_set()用于对成员r赋值,有成员函数c_show()用于显示输出半径r和面积s,有成员函数getr()用于获取半径r的值,有构造函数和析构函数。
类Cylinder有新增函数成员float型h和double型的bs、v,分别表示圆柱体的
高、表面积、体积有对成员h赋值的成员函数volume(),有成员函数cy_show()用于显示输出高h、表面积bs和面积v,有构造函数和析构函数。
在主函数main()中分别定义Point、Circle、Cylinder类的对象,观察并记录各类所属的构造函数和析构函数的执行情况,然后再main()半数中通过调用函数对各类的对象的所有数据成员(包括继承所得)赋值并输出显示其值。
要求
●本程序中所有函数都要有明确的执行信息输出,例如Point类的构造函数执行时应输出“执行类Point的构造函数”。
●各类定义时,数据成员都是私有属性,成员函数都是公有属性。
●各构造函数都是有参数(无默认形参值),并用参数对相应的数据成员初始化。
●各函数所需函数参数请根据题目要求的需要自行定义。
实验题目的编程设计思想:
实验题出自书上例题,所以一开始并不是很难写,大致的框架已经有了,然后再根据题目要求进行修改相关的代码就实现了。 程序代码、显示结果:
#includeiostream.h
#define Pi 3.14159
class Point //111111
{
private:
int x;
int y;
public:
Point(int px,int py)
{ cout执行类Point的构造函数被执行endl;
x=px;
y=py;}
void p_set(int px,int py);
void p_show();
~Point(){ cout执行类Point的析构函数被执行endl;}
};
void Point::p_set(int px,int py)
{
x=px;
y=py;
cout执行类Point的函数p_set()endl;
}
void Point:: p_show()
{ cout执行类Point的函数p_show(),输出坐标(x,y)值:(x,y)endl;}
/*void p_
文档评论(0)