调用D类的析构 函数
B2类的析构 函数
B1类的析构 函数
析构函数的调用顺序与构造函数恰好相反。 • 子类的析构函数体执行完毕; • 依次执行各个基类的析构函数。
14:07
11.1.4d 多重继承的派生类
用多个基类派生出来的类。
class ClassName : <Access> Base1,…,<Access> Basen { private:
主程序中,各个类的构造函数及析构函 数调用顺序是什么?
续上例 构造函数调用顺序:
...... D(int a,int b):B1(a),B2(b)
{z=b;} ......
开始调用D类的 构造函数
B1类的构造 函数
B2类的构造 函数
执行D类的构 造函数体,结束 对象的构造。
14:07
续上例 析构函数调用顺序:
14:07
公有派生例
class A{ int a;
protected: int b;
public: int c;
...... };
class B:public A{ int x; ...... };
请问: A类中出现的成员变量 a,b,c等,在B类中分别具有何 种权限性质?
14:07
派生方式—B 私有派生
CRoundBlock
color
14:07
新增了radius
11.1.7 继承性小结
继承性提高程序代码和可重用性; 对象集中了数据与操作代码,使程序对象化后,
更易理解和维护; 注意:
注意复习理解——继承性; 继承方式不同引起的对成员的访问权限的变化,要注
意复习理解,并注重使用方法; 单重继承与多重继承,成员初始化: 语言书写格式规范、 使用方法