/* 派生类与基类 1 派生类的数据大小 (1) 基类 - 结构体 (2) 派生类 - 结构体套结构体 2 顺序问题: (1) 构造与析构: 基类先构造,后析构。派生类,先析构,后构造。 (2) 原因: 依赖关系, 派生类使用基类的数据,所以基类先构造。 3 三种权限: 访问限制 三种地方访问: 本类、派生类、类外 (1) private 本类可以访问 (2) protected: 基类和派生类可以访问 (3) public: 任意地方都可以访问 4 调用 (1) 基类的成员函数无法使用派生类的成员变量和成员函数 (2) 在继承允许的情况下, 派生类可以调用基类的成员变量和成员函数 (a) 允许派生类对基类同名的成员变量和成员函数进行重写 (b) 允许派生类成员函数通过基类名::成员函数/成员变量方式,使用基类的成员变量和成员函数。 (c) 允许派生类对象通过对象名.基类名::成员函数/成员变量方式,使用基类的成员变量和成员函数。 5 赋值 (1) 派生类对象(结构体)可以直接赋值给基类对象(结构体), 反之则不行。 (2) 原因: 派生类对象的数据(成员变量)>=基类对象的数据(成员变量), 反之则是<=。 (1) 派生类对象(指针)可以直接赋值给基类对象(指针), 反之则不行。 (2) 原因: 派生类的数据(成员变量)可以调用基类的成员函数,反之则无法实现。 */