一、定义
纯
虚函数是一种特殊的虚函数,它的一般格式如下:
class <类名>
{
virtual <类型><函数名>(<参数表>)=0;
…
};
纯
虚函数可以让类先具有一个操作名称,而没有操作内容,让
派生类在继承时再去具体地给出定义。凡是含有纯
虚函数的类叫做
抽象类。这种类不能声明对象,只是作为
基类为
派生类服务。除非在
派生类中完全实现
基类中所有的的纯
虚函数,否则,派生类也变成了
抽象类,不能实例化对象。
为了解决上述问题,引入了纯
虚函数的概念,将函数定义为纯
虚函数(方法:virtual ReturnType Function()= 0;)。若要使
派生类为非
抽象类,则
编译器要求在派生类中,必须对纯
虚函数予以重写以实现
多态性。同时含有纯
虚函数的类称为
抽象类,它不能生成对象。这样就很好地解决了上述两个问题。
1、
多态性
a.编译时多态性:通过
重载函数实现
2、
虚函数
3、
抽象类
转载于:https://blog.51cto.com/lihaichuan/1141770