C 11 でのコンストラクターの継承
C 11 では、コンストラクターの継承により、派生クラスが基本クラスからコンストラクターを暗黙的に継承できます。これは、派生クラスが基本クラスのコンストラクターを使用する必要があることを指定する using キーワードによって実現されます。
構文:
struct B { B(int); // Normal constructor 1 B(string); // Normal constructor 2 }; struct D : B { using B::B; // Inherit constructors from B };
意味:
派生クラス D には継承されたコンストラクターがあります:
アプリケーション:
コンストラクターの継承は、次のシナリオで役立ちます:
詳細な説明:
標準ライブラリは、継承コンストラクターを次のように定義します。
D::D(int x) : B(x) {} D::D(string s) : B(s) {}
これは、派生クラス D のインスタンスが構築されるときに、基本クラス B の適切なコンストラクターを呼び出してその基本メンバーを初期化することを意味します。
以上がC 11 におけるコンストラクターの継承: どのように機能するのか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。