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成员函数。