菱形继承:
继承与多态是C++中重要的概念
继承的基本概念:
派生类(子类)是 具有基类(父类)性质的特殊群体,比如人是父类,学生/老师各是一个子类。
- 继承是面向对象复用的重要手段
- 三种限定修饰符:public private protected
- 基类的私有成员是不能在派生类中被访问的,如果一些成员对象不想再基类中被直接访问,但可以在派生类中被访问,可以被定义为保护成员。保护成员限定符是因为基础而出现的。
- public是一个接口继承,保持is-a原则。每个父类的成员对子类都可用,每个子类的对象也是父类的对象。
- protected/private是实现继承,保持has-a原则,基类的部分成员并未成为子类的一部分。
- class默认继承方式是private,struct默认是public。
class A
{
void f()
{
cout << "A::f()" << endl;
}
public:
int _a;
};
class B :