「継承」の版間の差分
提供: C++入門
(ページの作成:「<!-- vim: filetype=mediawiki --> 読み方 ;継承:けいしょう ;inheritance: いんへりたんす __TOC__ == 概要 == C++における継承(inheri...」) |
細 |
||
行73: | 行73: | ||
void B::x() | void B::x() | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
+ | == 継承とコンストラクタとデストラクタ == | ||
+ | |||
+ | [[クラス]]には、[[コンストラクタとデストラクタ]]があります。 | ||
+ | |||
+ | [[継承]]における [[コンストラクタとデストラクタ]] については、以下を参照してください。 | ||
+ | |||
+ | * [[継承とコンストラクタとデストラクタ]] | ||
+ | * [[継承と仮想デストラクタ]] | ||
== 関連項目 == | == 関連項目 == | ||
+ | * [[継承とコンストラクタとデストラクタ]] | ||
+ | * [[継承と仮想デストラクタ]] | ||
* [[クラス]] | * [[クラス]] | ||
* [[仮想関数]] | * [[仮想関数]] | ||
* [[純粋仮想関数]] | * [[純粋仮想関数]] | ||
* [[オーバーライド]] | * [[オーバーライド]] |
2013年3月24日 (日) 02:08時点における最新版
読み方
- 継承
- けいしょう
- inheritance
- いんへりたんす
目次
概要
C++における継承(inheritance)とは、クラスを継承することを指します。 クラスを継承することで、新しいクラスを作ることができます。
一部の実装を変更したいときに、有効です。
継承のメリット
- コードを再利用できる。
- コードを汎用化することで、コードの重複を防ぎ、ソースコードのメンテナンス性が上がる。
継承のデメリット
- 親クラスの実装変更により、サブクラスに影響を及ぼす可能性がある。
継承の例
ソースコード extends_3.cpp
#include <iostream> using namespace std; class B { public: void x() { cout << __PRETTY_FUNCTION__ << endl; } void f() { cout << __PRETTY_FUNCTION__ << endl; } }; class C1 : public B { public: void f() { cout << __PRETTY_FUNCTION__ << endl; } }; int main(int argc, char const* argv[]) { C1 c1; c1.f (); c1.x (); return 0; }
コンパイル
g++ extends_3.cpp -o extends_3
実行例
% ./extends_3 void C1::f() void B::x()
継承とコンストラクタとデストラクタ
クラスには、コンストラクタとデストラクタがあります。
継承における コンストラクタとデストラクタ については、以下を参照してください。