c++面向对象程序设计实验报告

上传人:第*** 文档编号:34210924 上传时间:2018-02-21 格式:DOCX 页数:18 大小:166.92KB
返回 下载 相关 举报
c++面向对象程序设计实验报告_第1页
第1页 / 共18页
c++面向对象程序设计实验报告_第2页
第2页 / 共18页
c++面向对象程序设计实验报告_第3页
第3页 / 共18页
c++面向对象程序设计实验报告_第4页
第4页 / 共18页
c++面向对象程序设计实验报告_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《c++面向对象程序设计实验报告》由会员分享,可在线阅读,更多相关《c++面向对象程序设计实验报告(18页珍藏版)》请在金锄头文库上搜索。

1、面向对象程序设计学院:计算机与信息工程学院班级:电子信息工程 1401 班实验一一. 实验题目定义盒子 Box 类,要求具有以下成员变量:长、宽、高分别为length, with,high;具有一个静态成员变量:盒子和个数 number;具有以下成员函数:1)构造函数和析构函数;2)计算盒子体积的函数;3)计算盒子的表面积的函数;4)显示长、宽、高、体积和表面积函数;5)显示盒子个数的静态成员函数。编写 main 函数进行测试。二. 实验代码Box.h#includeusing namespace std;class Boxprivate:double length,width,high;st

2、atic int number;public:Box(double a=0,double b=0,double c=0)length=a;width=b;high=c;number+;Box()number-;double volunm();double area();void display();int getnumber();Box.cpp#include#includeBox.husing namespace std;double Box:volunm()return length*width*high;double Box:area()return 2*(length*width+le

3、ngth*high+width*high);void Box:display()cout#includeBox.husing namespace std;int Box:number=0;void main()Box a(10,10,10);a.display();coutusing namespace std;class Vehicleprivate:double speed,weight;public:Vehicle(double a=0,double b=0)speed=a;weight=b;void setspeed(double a);void setweight(double b)

4、;double getspeed();double getweight();#endifVehicle.cpp#includeVehicle.h”using namespace std;void Vehicle:setspeed(double a)speed=a;void Vehicle:setweight(double b)weight=b;double Vehicle:getspeed()return speed;double Vehicle:getweight()return weight;Bicycle.h#ifndef BICYCLE_H#define BICYCLE_H#inclu

5、deBase.hclass Bicycle:public Vehicleprivate:double high;public:Bicycle(double a=0)high=a;void sethigh(double a);double gethigh();void getname();#endifBicycle.cpp#include#includeBicycle.husing namespace std;void Bicycle:sethigh(double a)high=a;double Bicycle:gethigh()return high;void Bicycle:getname(

6、)cout#includeCar.husing namespace std;void Car:setseatnum(int a)seatnum=a;int Car:getseatnum()return seatnum;void Car:getname()cout#includeVehicle.h#includeBicycle.h#includeCar.husing namespace std;void main()Bicycle a;a.setspeed(20);a.setweight(30);a.sethigh(1);a.getname();coutusing namespace std;c

7、lass TDshapepublic:virtual double area()=0;virtual void printName()=0;#endifCircle.h#ifndef CIRCLE_H#define CIRCLE_H#includeTDshape.hclass Circle:public TDshapeprivate:double r;public:Circle(double a=0)r=a;virtual double area();virtual void printName();#endifCircle.cpp#includeCircle.hdouble Circle:a

8、rea()return 3.1415926*r*r;void Circle:printName()cout#includeTDshape.h#includeCircle.h#includeSquare.husing namespace std;void vpf(TDshape *bptr)bptr-printName();coutarea() 平方米endl;void main()Circle a(5);TDshape *array;array=vpf(array);coutendl;coutendl;Square b(5);TDshape *array1;array1=vpf(array1)

9、;三实验结果四.实验总结这道题目考的是继承和多肽。先定义了一个 TDshape 的抽象类,并在TDshape 类中设计了两个纯虚函数 area()和 printName(),他们实际上访问派生类 Circl、Square 类中同名虚函数的接口。每一个类都要根据自己的实际情况重定义各虚函数,以实现本类需要的功能。在主函数里定义了基类对象的指针数组后可以通过基类指针访问虚函数也可以通过基类引用访问虚函数。其他的和第二题差不多,没什么难度。学习本门课程的心得和体会经过这几个星期对C+面向对象程序设计的学习,我学习到了基本的C+理论知识,了解到了 C+语言程序设计的思想,这些知识都为我未来的发展和进一

10、步的学习打下了坚实的基础。想要学好 C+这门课程必须掌握 C 语言的基础运用,C+其实并不是一个新的计算机语言,它只是在 C 语言的基础上预先编写好了很多函数。所以如果把 C 语言比为砖块,那么 C+就是有砖块组成的一些小的建筑。所以学习 C+必需先掌握 C 语言的基础运用。这几节课学习的最重要的知识就是从面向过程转变为面向对象的一个思维方式,面向对象不只是一种程序设计方法,还是一种建立客观事物模型、分析复杂事物的思想方法,他是以人们通常描述现实世界的方法来描述要解决的问题。面向对象的程序设计的基本特征:抽象、封装、继承和多态。抽象:对一类对象进行概括,抽出他们共同的性质并加以描述的过程。封装

11、:将抽象得到的属性数据和行为代码有机的结合,形成一个具有类特征的统一体。继承:一个新类可以从已有的类派生而来。多态:不同对象对于同样的施加于其上的作用会有不同的反应。C+语言课程是一门实践性很强的课程,光看书本和课堂听讲是远远不够的,一定要多动手写设计、编写程序才能有所进步。记得从最初的一节课只能写一个题目到后来的一节课可以编写三个题目,速度的提升正是熟练度提升的体现。其次在学习中必须做到循序渐进,对所学的每一部分内容都要完成一定数量的练习。所以每次上机课的习题都是老师精心挑选出来的,既有基本的题目,也有一些比较常规的题目,通过这几次的上机练习,调试错误来修订语法、排除逻辑错误、进而提高了编程能力,也积累了一定的编程经验。对于学习,主要还是要自己努力,老师已经教的很仔细了,但是学习的主动权在我们手中。我们要对这门语言要有兴趣。可能会有很多不知道,不理解的地方,当时我们应该多思考,借助一些书籍及网络的条件,进一步理解和体会。把自己学习的东西融会贯通就好了,主要还是在于对于课本的理解,主要还是自己领悟。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号