预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共18页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

——面向对象程序设计 学院:计算机与信息工程学院 班级:电子信息工程1401班 实验一 实验题目 定义盒子Box类,要求具有以下成员变量:长、宽、高分别为length,with,high;具有一个静态成员变量:盒子和个数number;具有以下成员函数:1)构造函数和析构函数;2)计算盒子体积的函数;3)计算盒子的表面积的函数;4)显示长、宽、高、体积和表面积函数;5)显示盒子个数的静态成员函数。编写main函数进行测试。 实验代码 Box.h #include<iostream> usingnamespacestd; classBox { private: doublelength,width,high; staticintnumber; public: Box(doublea=0,doubleb=0,doublec=0) { length=a; width=b; high=c; number++; } ~Box() { number--; } doublevolunm(); doublearea(); voiddisplay(); intgetnumber(); }; Box.cpp #include<iostream> #include"Box.h" usingnamespacestd; doubleBox::volunm() { returnlength*width*high; } doubleBox::area() { return2*(length*width+length*high+width*high); } voidBox::display() { cout<<"长:"<<length<<"米"<<endl; cout<<"宽:"<<width<<"米"<<endl; cout<<"高:"<<high<<"米"<<endl; cout<<"体积:"<<volunm()<<"立方米"<<endl; cout<<"表面积:"<<area()<<"平方米"<<endl; } intBox::getnumber() { returnnumber; } main.cpp #include<iostream> #include"Box.h" usingnamespacestd; intBox::number=0; voidmain() { Boxa(10,10,10); a.display(); cout<<"个数:"<<a.getnumber()<<"个"<<endl; } 实验结果 四.实验总结 这个题目主要是考构造函数、析构函数和静态成员变量的使用。在盒子的类中,声明了长、宽、高三个私有成员,和一个number的静态成员变量。这道题的关健是不能直接访问静态成员变量,必须访问包含静态成员变量的函数才可以对其进行操作,且静态成员必须赋初值。 实验二 实验题目 定义一个车基类Vehicle,含私有成员speed、weight。派生出自行车类Bicycle,增加high成员;派生出汽车类Car,增加seatnum(座位数)成员。每个类都有:各自的构造函数、设置(如setSpeed等)和返回每个成员变量(如getSpeed等)的函数、显示名称和参数的函数。编写main函数进行测试。 实验代码 Vehicle.h #ifndefVEHICLE_H #defineVEHICLE_H #include<iostream> usingnamespacestd; classVehicle { private: doublespeed,weight; public: Vehicle(doublea=0,doubleb=0) { speed=a; weight=b; } voidsetspeed(doublea); voidsetweight(doubleb); doublegetspeed(); doublegetweight(); }; #endif Vehicle.cpp #include"Vehicle.h” usingnamespacestd; voidVehicle::setspeed(doublea) { speed=a; } voidVehicle::setweight(doubleb) { weight=b; } doubleVehicle::getspeed() { returnspeed; } doubleVehicle::getweight() { returnweight; } Bicycle.h #ifndefBICYCLE_H #defineBICYCLE_H #inc