面向对象程序设计

定义一个车(vehicle)基类,具有 Maxspeed、Weight 等成员,Run、Stop 等成员函数, 由此派生出自行车(bicycle)类、汽车(motorcar)类。自行车(bicycle)类有高度(Height)等属性, 汽车(motorcar)类有座位数(SeatNun)等属性。从bicycle 和 motorcar 派生出摩托车(motorbicycle)类, 在继承过程中,注意把 vehicle 设置为虚基类。


由此派生出自行车(bicycle)类、汽车(motorcar)类。自行车(bicycle)类有高度(Height)等属性,
汽车(motorcar)类有座位数(SeatNun)等属性。从bicycle 和 motorcar 派生出摩托车(motorbicycle)类,
在继承过程中,注意把 vehicle 设置为虚基类。

#include
using namespace std;
class vehicle
{
protected:
int MaxSpeed;
int Weight;
public:
vehicle(int s,int w){MaxSpeed=s;Weight=w;}
void SetMaxSpeed(int s){MaxSpeed=s;}
void SetWeight(int w){Weight=w;}
void Run(){cout<<“class vehicle is running!”<<endl;}
void Stop(){cout<<“class vehicle has stopped!”<<endl;}
};

class bicycle:virtual public vehicle
{
protected:
int Height;
public:
bicycle(int h,int s,int w):vehicle(s,w)
{Height=h;}
};
class motorcar:virtual public vehicle
{
protected:
int SeatNum;
public:
motorcar(int S,int s,int w):vehicle(s,w)
{SeatNum=S;}
};
class motorcycle:public bicycle,public motorcar
{
public:
motorcycle(int s,int w,int h,int S):vehicle(s,w),bicycle(h,s,w),motorcar(S,s,w){}
void Show()
{
cout<<“MaxSpeed:”<<MaxSpeed<<endl;
cout<<“Weight:”<<Weight<<endl;
cout<<“Height:”<<Height<<endl;
cout<<“SeatNum:”<<SeatNum<<endl;
}
};
int main()
{
motorcycle mc(350,280,15,5);
mc.Show();
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值