This is a simple C++ Program to demonstrate Inheritance. Simpler methods in the classes have been changed to inline code to shorten the file considerably.

In a practical programming situation, methods that are this short should be programmed inline since the actual code to return a simple value is shorter than the code required to send a message to a non-inline method.

#include <iostream>

using namespace std;

class vehicle {
  protected:
    int wheels;
  float weight;
  public:
    void initialize(int in_wheels, float in_weight);
  int get_wheels(void) {
    return wheels;
  }
  float get_weight(void) {
    return weight;
  }
  float wheel_loading(void) {
    return weight / wheels;
  }
};

class car: public vehicle {
  int passenger_load;
  public:
    void initialize(int in_wheels, float in_weight, int people = 4);
  int passengers(void) {
    return passenger_load;
  }
};

class truck: public vehicle {
  int passenger_load;
  float payload;
  public:
    void init_truck(int how_many = 2, float max_load = 24000.0);
  float efficiency(void);
  int passengers(void) {
    return passenger_load;
  }
};

main() {
  vehicle unicycle;

  unicycle.initialize(1, 12.5);
  cout << "The unicycle has " << unicycle.get_wheels() << " wheel.\n";
  cout << "The unicycle's wheel loading is " << unicycle.wheel_loading() << " pounds on the single tire.\n";
  cout << "The unicycle weighs " << unicycle.get_weight() << " pounds.\n\n";

  car sedan;

  sedan.initialize(4, 3500.0, 5);
  cout << "The sedan carries " << sedan.passengers() << " passengers.\n";
  cout << "The sedan weighs " << sedan.get_weight() << " pounds.\n";
  cout << "The sedan's wheel loading is " << sedan.wheel_loading() << " pounds per tire.\n\n";

  truck semi;

  semi.initialize(18, 12500.0);
  semi.init_truck(1, 33675.0);
  cout << "The semi weighs " << semi.get_weight() << " pounds.\n";
  cout << "The semi's efficiency is " << 100.0 * semi.efficiency() << " percent.\n";
}
// initialize to any data desired
void
vehicle::initialize(int in_wheels, float in_weight) {
  wheels = in_wheels;
  weight = in_weight;
}
void car::initialize(int in_wheels, float in_weight, int people) {
  passenger_load = people;
  wheels = in_wheels;
  weight = in_weight;
}

void truck::init_truck(int how_many, float max_load) {
  passenger_load = how_many;
  payload = max_load;
}

float truck::efficiency(void) {
  return payload / (payload + weight);
}

Output of the C++ program

The unicycle has 1 wheel.
The unicycle's wheel loading is 12.5 pounds on the single tire.
The unicycle weighs 12.5 pounds.

The sedan carries 5 passengers.
The sedan weighs 3500 pounds.
The sedan's wheel loading is 875 pounds per tire.

The semi weighs 12500 pounds.
The semi's efficiency is 72.9291 percent.