●学校情報

講座一覧・募集状況

学習方法

学習サポート

修了生の評価

受講生の横顔

当学院について

入学相談

入学手続

 

●講座情報

技術者養成講座

プログラミング講座

WEB講座

情報処理試験講座

Excel講座

Access講座

 

●関連コラム

関連コラム

関連用語集

 

logo

 

 

関連用語集

C++の継承(Inheritance)とは?クラスを拡張する基本テクニック

C++では、既存のクラスの機能を引き継いで新しいクラスを作ることができます。 この仕組みを「継承(Inheritance)」と呼び、オブジェクト指向プログラミングの重要な柱のひとつです。

この記事では、C++の継承の基本や使い方、メリットを初心者向けにわかりやすく解説します。

継承とは?

継承とは、あるクラス(親クラス、基底クラス)の機能を、新しいクラス(子クラス、派生クラス)で引き継ぐ仕組みです。 これにより、既存のクラスを再利用しながら、新しい機能を追加できます。

基本構文

class 親クラス名 {
    // 共通の機能
};

class 子クラス名 : public 親クラス名 {
    // 親の機能 + 子の追加機能
};

通常は public 継承を使います。これにより、親クラスの public メンバが子クラスでもそのまま使えるようになります。

継承の例

#include <iostream>
using namespace std;

// 親クラス
class Animal {
public:
    void speak() {
        cout << "動物が鳴いています。" << endl;
    }
};

// 子クラス(Animalを継承)
class Dog : public Animal {
public:
    void bark() {
        cout << "ワンワン!" << endl;
    }
};

int main() {
    Dog myDog;
    myDog.speak(); // 親クラスの関数を使用
    myDog.bark();  // 子クラス独自の関数
    return 0;
}

この例では、DogクラスはAnimalクラスを継承しており、親の関数 speak() をそのまま使えています。

アクセス修飾子と継承の関係

継承には3種類の方法があります:

  • public 継承:親の public → 子でも public
  • protected 継承:親の public → 子では protected
  • private 継承:親の public → 子では private

通常は、オブジェクト指向の原則に則り public 継承を使います。

継承を使うメリット

  1. コードの再利用ができる
    既存クラスの機能を再利用でき、開発効率がアップします。
  2. 拡張しやすい構造になる
    基本の機能を維持しつつ、新しい機能を追加できます。
  3. 共通インターフェースが作れる
    複数のクラスに共通の機能を持たせる際に便利です。

注意点

  • 親クラスのメンバがprivateの場合、子クラスからは直接アクセスできません。
  • 親と子で同じ関数名がある場合は、オーバーライドvirtualを意識する必要があります。

まとめ

C++の継承は、既存のクラスの機能を再利用して新しいクラスを作るための便利な仕組みです。 うまく使えば、コードを簡潔に保ちながら、柔軟な設計が可能になります。

まずは public 継承から試して、親クラスの機能を子クラスでどのように使えるかを実際に体験してみましょう!