C++中的保护继承Protected Inheritance是一种继承方式,它可以使子类继承基类的成员变量和成员函数,但是子类继承的成员变量和成员函数只能在子类的内部使用,不能被外部访问。
使用方法
使用保护继承时,我们可以在类的定义中使用关键字protected,表示当前类使用保护继承,如下所示:
class Father { public: int a; void func(); protected: int b; void func2(); }; class Son : protected Father { public: void func3(); };
以上代码中,Son类使用protected关键字继承Father类,表示Son类继承Father类的成员变量和成员函数,但是只能在Son类的内部使用,不能被外部访问。
使用保护继承时,可以使用基类的public成员变量和public成员函数,也可以使用基类的protected成员变量和protected成员函数,但是不能使用基类的private成员变量和private成员函数,如下所示:
class Father { public: int a; void func(); protected: int b; void func2(); private: int c; void func3(); }; class Son : protected Father { public: void func4(); };
以上代码中,Son类可以使用Father类的public成员变量a和public成员函数func,也可以使用Father类的protected成员变量b和protected成员函数func2,但是不能使用Father类的private成员变量c和private成员函数func3。
一下,保护继承Protected Inheritance是一种继承方式,它可以使子类继承基类的成员变量和成员函数,但是子类继承的成员变量和成员函数只能在子类的内部使用,不能被外部访问,使用时需要在类的定义中使用protected关键字,可以使用基类的public成员变量和public成员函数,也可以使用基类的protected成员变量和protected成员函数,但是不能使用基类的private成员变量和private成员函数。