拡張クラスが既存のクラスのメンバを受け継ぐことを継承(inheritance)と呼ぶ
基本クラス、新しいクラスは派生クラスと呼ぶ
### 継承
class Car {
    private:
        int num;
        double gas;
    public:
        Car();
        void setCar(int n, double g);
        void show();
};
class RacingCar : public Car {
    private:
        int course;
    public:
        RacingCar();
        void setCourse(int c);
};
Car::Car() {
    num = 0;
    gas = 0.0;
    cout << "車を作成しました。\n";
}
void Car::setCar(int n, double g){
    num = n;
    gas = g;
    cout << "車のナンバーを" << num << "ガソリン量を" << gas << "にしました。\n";
}
void Car::show(){
    cout << "車のナンバーは" << num << "です。\n";
    cout << "ガソリン量は" << gas << "です。\n";
}
RacingCar::RacingCar(){
    course = 0;
    cout << "レーシングカーを作成しました。\n";
}
void RacingCar::setCourse(int c){
    course = c;
    cout << "コース番号を" << course << "にしました。\n";
}
int main() {
    
    RacingCar rccar1;
    rccar1.setCar(1234, 20.5);
    rccar1.setCourse(5);
    
    return 0;
}
$ g++ -o sample sample.cpp && ./sample
車を作成しました。
レーシングカードを作成しました。
車のナンバーを1234ガソリン量を20.5にしました。
コース番号を5にしました。
### 基本クラスのコンストラクタを指定
RacingCar::RacingCar(int n, double g, int c): Car(n, g) が呼び出されるようになる。
class Car {
    private:
        int num;
        double gas;
    public:
        Car();
        Car(int n, double g);
        void setCar(int n, double g);
        void show();
};
class RacingCar : public Car {
    private:
        int course;
    public:
        RacingCar();
        RacingCar(int n, double g, int c);
        void setCourse(int c);
};
Car::Car() {
    num = 0;
    gas = 0.0;
    cout << "車を作成しました。\n";
}
Car::Car(int n, double g){
    num = n;
    gas = g;
    cout << "ナンバー" << num << "ガソリン量" << gas << "の車を作成しました。\n";
}
void Car::setCar(int n, double g){
    num = n;
    gas = g;
    cout << "車のナンバーを" << num << "ガソリン量を" << gas << "にしました。\n";
}
void Car::show(){
    cout << "車のナンバーは" << num << "です。\n";
    cout << "ガソリン量は" << gas << "です。\n";
}
RacingCar::RacingCar(){
    course = 0;
    cout << "レーシングカーを作成しました。\n";
}
RacingCar::RacingCar(int n, double g, int c): Car(n, g){
    course = 0;
    cout << "コース番号" << course << "のレーシングカーを作成しました。\n";
}
void RacingCar::setCourse(int c){
    course = c;
    cout << "コース番号を" << course << "にしました。\n";
}
int main() {
    
    RacingCar rccar1(1234, 20.5, 5);
    
    return 0;
}
	