Files
UoL/CM2005 Object Oriented Programming/Topic 6/6.5.1 Inheritance.cpp
2021-09-05 19:13:41 -05:00

67 lines
724 B
C++

#include <iostream>
class Vehicle
{
public:
Vehicle();
float getspeed();
void accelerate();
void beepHorn();
private:
float speed;
};
class Train : public Vehicle
{
public:
Train();
void beepHorn();
};
Train::Train()
{
}
void Train::beepHorn()
{
if(getspeed() < 0.5)
{
std::cout << "bip" << std::endl;
}
else
{
std::cout << "BOOP BIP" << std::endl;
}
}
Vehicle::Vehicle() : speed(0.0f)
{
}
float Vehicle::getspeed()
{
return speed;
}
void Vehicle::accelerate()
{
speed += 0.5f;
}
void Vehicle::beepHorn()
{
std::cout << "meep meep" << std::endl;
}
int main()
{
Vehicle v;
v.beepHorn();
Train t;
t.beepHorn();
t.accelerate();
t.beepHorn();
}