抽象类的意义:为一个类群提供共同的接口(操作),是实现多态的方式,使程序结构清晰,便于理解和维护。
抽象类中应只含有成员函数,不应包含数据成员。
抽象类的基本组成形式:
class interface { public: virtual ~interface(){}//析构函数不能作为纯虚函数 virtual void add(int,int)=0; virtual void sub()=0; }
纯虚函数:virtual 函数原型 =0;
通过纯虚函数,使得基类指针能够确认类具有该函数,从而实现多态。
具有纯虚函数的类成为抽象类。
抽象类不能实例化为对象,其派生类必须将其所有纯虚函数都重定义一遍,否则无法实例化。