Part8 多态性 8.3抽象类
纯虚函数
纯虚函数是一个在基类中声明的虚函数,它在该基类中没有定义具体的操作内容,要求各派生类根据实际需要定义自己的版本。
抽象类
带有纯虚函数的类称为抽象类
注意:
抽象类只能作为基类来使用。
不能定义抽象类的对象。
//8-6抽象类举例 #include<iostream> using namespace std; class Base1{ public: virtual void display() const = 0; //纯虚函数 }; class Base2:public Base1{ public: virtual void display() const; // 覆盖基类的虚函数 }; void Base2::display() const{ cout << "Base2::display()" << endl; } class Derived: public Base2{ public: virtual void display() const; //覆盖基类的虚函数 }; void Derived::display() const{ cout << "Derived::dispaly()" << endl; } void fun(Base1 *ptr){ ptr->display(); } int main(){ Base2 base2; Derived derived; fun(&base2); fun(&derived); return 0; }