1,声明纯虚函数的形式:
virtual 返回类型 函数名(参数表)=0;
和虚函数的区别就是,在后面加了一个“=0”。虚函数没有函数体,不能被调用。它的作用是为派生类提供一个公共的接口,派生类可以根据需要,重新定义改函数。
2,抽象类:如果一个类至少含有一个纯虚函数,则该类属于抽象类。定义抽象类的唯一目的是:让它作为基类去建立派生类。
注意:抽象类只能作为其它类的派生类,不能建立抽象类对象,因为,抽象类中含有没有定义功能的函数;
不允许从具体类派生出抽象类。具体类,就是不含有纯虚函数的类;
可以声明指向抽象类的指针和引用,用它来指向派生类对象,进而实现多态性,即不能建立抽象类对象,但是可以声明指向抽象类的指针或引用;
如果继承了抽象类中的纯虚函数,而派生类中仍没有给出该函数的具体实现,那么该派生类仍是抽象类。