タグ

ブックマーク / cpp-lang.sevendays-study.com (1)

  • 一週間で身につくC++言語の基本|第6日目:virtualと仮想関数

    オーバーライド再び 仮想関数について説明する前に、少し継承に関して復習をしてみましょう。基編の第7日目で学んだとおり、クラスは、継承によって、あるクラスの機能を受け継いだ、新しいクラスを作ることができました。 このとき、元になるクラスのことを、親クラスおよび、スーパークラス、その機能を受け継いだクラスのことを、子クラスおよび、サブクラスと呼びました。このとき、サブクラスの中に、スーパークラスと同一の名前、同一の引数、同一の戻り値を持つメンバ関数があった場合、これをオーバーライドと言い、サブクラスでは、そちらで定義された処理が優先されました。 しかし、ここに一つの問題点があります。それは、スーパークラスからサブクラスのメンバ関数を呼び出すことができないという点です。例えば、鳥というクラスがあったとします。その場合、それを継承したサブクラスとして考えられるのは、「にわとり」や「カラス」、「は

    takuwz
    takuwz 2018/08/29
  • 1