Problem F: 汽车、客车、货车

Problem F: 汽车、客车、货车

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 1302  Solved: 686
[Submit][Status][Web Board]

Description

定义Vehicle类,包括:

1. 一个int类型属性num,表示汽车的轮子数量。

2. 构造函数、析构函数,输出如样例所示的信息。

定义Bus类,是Vehicle类的子类,包括:

1. 一个int类型属性guest,表示客车可乘坐的人数。

2. 构造函数、析构函数,输出如样例所示的信息。

定义Truck类,是Vehicle类的子类,包括:

1. 一个int类型属性weight,表示货车可载荷的货物重量。

2. 构造函数、析构函数,输出如样例所示的信息。

 

Input

输入有多行,每行一个测试用例,每行包括1个正整数(车的轮子数量)、1个字符b或者t(b、t分别表示客车、货车)、1个正整数(可乘坐的人数或可承载的货物重量)。

 

Output

见样例。

 

Sample Input

4 b 408 t 15

Sample Output

Vehicle has 4 wheels is created.Bus which can carry 40 persons is created.Bus which can carry 40 persons is erased.Vehicle has 4 wheels is erased.Vehicle has 8 wheels is created.Truck which can carry 15 tons goods is created.Truck which can carry 15 tons goods is created.Vehicle has 8 wheels is erased.

HINT

 

Append Code

append.cc,

[Submit][Status][Web Board]

#include<bits/stdc++.h>

using namespace std;

class Vehicle

{

private:

    int num;

public:

    Vehicle(int n):num(n){cout<<"Vehicle has "<<num<<" wheels is created."<<endl;}

    ~Vehicle(){cout<<"Vehicle has "<<num<<" wheels is erased."<<endl;}

};

class Bus: public Vehicle

{

private:

    int guest;

public:

    Bus(int n,int g):guest(g),Vehicle(n){cout<<"Bus which can carry "<<guest<<" persons is created."<<endl;cout<<"Bus which can carry "<<guest<<" persons is erased."<<endl;}

    ~Bus(){}

};

class Truck: public Vehicle

{

private:

    int weight;

public:

    Truck(int n,int w):weight(w),Vehicle(n){cout<<"Truck which can carry "<<weight<<" tons goods is created."<<endl;cout<<"Truck which can carry "<<weight<<" tons goods is created."<<endl;}

    ~Truck(){cout<<"Truck which can carry "<<weight<<" tons goods is created."<<endl;}

};

int main()

{

    int w, g;

    char t;

    Vehicle *veh;

    while (cin>>w>>t>>g)

    {

        if (t == 'b')

        {

            veh = new Bus(w, g);

        }

        else

        {

            veh = new Truck(w, g);

        }

        delete veh;

    }

    return 0;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值