c++的继承方式——公有、保护、私有
c++的继承方式有三种,这点和java是不一样的,分别是公有、保护、私有。
格式如下:
class A {...};
class B: [private | protected | public] A
{
...
}
其作用也很简单,就是改变父类的成员的可访问性。
可访问性:public > protected > private
因此三种继承方式下,子类对于父类的成员的可访问性为:min(继承方式, 父类设置)
即,如果子类是私有继承,那么父类中所有成员变量不论是公有还是保护还是私有,全部变成私有了。
而如果是保护继承,那么父类中所有公有和保护的成员变量都变成保护类型了,而父类中的私有成员仍然是私有成员。
多说几句,子类成员函数只能访问继承后父类中为public 和 protected类型的成员变量和成员函数,而不能访问private类型的。