C++考试,急求编程题答案,要完整程序!

声明一个Vehicle类,有数据成员MaxSpeed,Weight及成员函数Run、Stop实现输出其运动状态;并由Vehicle类派生出自行车(bicycle)类,增加... 声明一个Vehicle类,有数据成员MaxSpeed,Weight及成员函数Run、Stop实现输出其运动状态;并由Vehicle类派生出自行车(bicycle)类,增加数据成员高度(height)和操作函数SetMaxSpeed( int n )直接给MaxSpeed赋值。成员函数的实现均在类外实现。声明一个自行车类对象cBicycle,写出基类和派生类的构造函数和析构函数的调用顺序 展开
 我来答
智慧人生gN
2013-06-21
知道答主
回答量:33
采纳率:0%
帮助的人:10.3万
展开全部

#pragma once

#include <iostream>

using namespace std;

class Vehicle

{

public:

 Vehicle(void);

 ~Vehicle(void);

 int MaxSpeed;

 int Weight;

 

 void Run();

 void Stop();

};


#include "Vehicle.h"

Vehicle::Vehicle(void)

{

}

Vehicle::~Vehicle(void)

{

}

void Vehicle::Run()

{

 cout<<"自行车正在以"<<MaxSpeed<<"的速度运动"<<endl;

}

void Vehicle::Stop()

{

 cout<<"停止运动"<<endl;

}


//自行车类

#pragma once

#include "vehicle.h"


class bicycle :

 public Vehicle

{

public:

 bicycle(void);

 ~bicycle(void);

 int height;

 void SetMaxSpeed(int n);

};


#include "bicycle.h"

bicycle::bicycle(void)

{

}

bicycle::~bicycle(void)

{

}

void bicycle::SetMaxSpeed(int n)

{

 MaxSpeed = n;

}

 

#include "bicycle.h"

bicycle cBicycle;

void main()

{

 cBicycle.SetMaxSpeed(5);

 cBicycle.Run();

 cBicycle.Stop();

 system("pause");

}

深海_蓝鱼
2013-06-21 · TA获得超过423个赞
知道小有建树答主
回答量:178
采纳率:0%
帮助的人:234万
展开全部
class  Vehicle
{
public:
    Vehicle();
    ~Vehicle();
proctected:
    int MaxSpeed;
    int Weight;
    bool Run();
    bool Stop();
}

class  bicycle : public Vehicle
{
public:
    bicycle();
    ~bicycle();
proctected:
    int height;
    bool SetMaxSpeed(int );
}

bool bicycle::SetMaxSpeed(int speed)
{
    MaxSpeed = speed;
    return true;
}

int main()
{
    bicycle cBicycle;
    return 0;
}

顺序为:先父类构造,再子类构造;  先子类析构,再父类析构

更多追问追答
追问
运行不出来呀
运行不出来呀
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Joshion2008
2013-06-21 · TA获得超过152个赞
知道小有建树答主
回答量:175
采纳率:0%
帮助的人:130万
展开全部
//C++ CODE

#include <iostream>

using namespace std;

class Vehicle {
public:
Vehicle () {
cout << "Vehicle construct" << endl;
}

virtual ~Vehicle () {
cout << "Vehicle deConstruct" << endl;
}

void Run () {}
void Stop () {}
    
protected:
    int    m_maxSpeed;
    int    m_weight;
};

class Bicycle : public Vehicle {
public:
Bicycle () {
cout << "Bicycle construct" << endl;
}
virtual ~Bicycle () {
cout << "Bicycle deConstruct" << endl;
}

void setMaxSpeed (int n); 

private:
int m_height;
};

void Bicycle::setMaxSpeed (int n) {
m_maxSpeed = n;
}

int main (int argc, char** argv) {

#define HEAP
//--Way 1: in the stack
#ifndef HEAP
Bicycle bicyc();

//--Way 2: in the heap
#ifdef HEAP
Bicycle* bicyc = new Bicycle();
bicyc->setMaxSpeed(100);
delete bicyc;
bicyc = NULL;
#endif
return true;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式