北大青鸟 c 第九章 多态 Ⅴ ersion3.0 CHA
Version 3.0 多态 第九章
回顾 继承 访问控制 继承中的构造函数和析构函数 函数覆盖 北大青鸟
2 回顾 • 继承 • 访问控制 • 继承中的构造函数和析构函数 • 函数覆盖
目标 虚函数 纯虚函数 抽象类 动态绑定 虚析构函数 北大青鸟
3 目标 • 虚函数 • 纯虚函数 • 抽象类 • 动态绑定 • 虚析构函数
虚函数 基类的指针可以指向派生类的对象 但调用的函数却是基类的函数 虚函数可以解决这个问题 北大青鸟
4 虚函数 • 基类的指针可以指向派生类的对象 • 但调用的函数却是基类的函数 • 虚函数可以解决这个问题
示例21 sinclude <iostream. h> class shapes public: void draw o //基类中的函数 cout<"绘制基本形状\n"; class Circle public Shap private: int radius; public: void draw o //在派生类中重新定义 cout<<"绘制圆形\n"; 北大青鸟
5 示例 2-1 #include <iostream.h> class Shapes { public: void draw() //基类中的函数 { cout << "绘制基本形状\n"; } }; class Circle : public Shapes { private: int radius; public: void draw() //在派生类中重新定义 { cout << "绘制圆形\n"; } };