C では、基底クラス関数に対する派生クラスのアクセス権は、継承レベルによって異なります。 public: 派生クラスは、制限なく基底クラスのパブリック関数にアクセスし、オーバーライドできます。保護: 派生クラスは、基本クラスの保護された関数にアクセスしてオーバーライドすることのみが可能で、基本クラスのオブジェクトからそれらの関数を直接呼び出すことはできません。 private: 派生クラスは基本クラスのプライベート関数にアクセスできません。
C では、派生クラスが基本クラスを継承する場合、関数を含む基本クラスのメンバーを継承できます。継承権限に応じて、派生クラスは基本クラス関数にアクセスするさまざまな方法を持ちます。
C には 3 つの継承されたアクセス レベルがあります。
次の基本クラスと派生クラスを考えてみましょう:
class Base { public: void public_function(); protected: void protected_function(); private: void private_function(); }; class Derived : public Base { public: // 派生类可以无限制地访问 public 函数 void call_public_function() { public_function(); } protected: // 派生类只能访问 protected 函数 void call_protected_function() { protected_function(); } };
この例からわかるように:
Derived
call_public_function
メソッドを通じて、基本クラスの public_function
にアクセスできます。 call_protected_function
メソッドを通じて基本クラスの protected_function
にアクセスすることもできます。 がプライベートであるため、
直接アクセスしたりオーバーライドしたりすることはできません。 基本クラスの保護された関数は、基本クラスのオブジェクトから直接呼び出すことはできませんが、保護された関数またはパブリック関数から呼び出すことができることに注意してください。前提条件は、派生クラスがこれらの保護された関数にアクセスできることです。
以上がC++ 関数の継承の詳細説明: 継承されたアクセス権とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。