`
yangyou230
  • 浏览: 1652576 次
文章分类
社区版块
存档分类

纯虚函数

 
阅读更多

纯虚函数是一种特殊的虚函数,格式一般如下:

class <类名>

{

virtual <type> <functionname>(<parameter 1,……>) = 0

……

};

采用纯虚函数,是因为在很多情况下,基类中不能对虚函数给出有意义的实现,只能把函数的实现留给该基类的派生类去做。例如动物作为一个基类可以派生出老虎、孔雀等子类,但是动物本身生成对象不合情理。对于纯虚函数,编译器要求在派生类中予以重载以实现多态性。含有纯虚函数的类称为抽象类,抽象类不能生成对象。

为了方便使用多态特性,我们常常需要在基类中定义虚拟函数。在很多情况下,基类本身生成对象是不合情理的,例如,动物作为一个基类可以派生出老虎、孔雀等子类,但动物本身生成对象明显不合常理。为了解决上述问题,引入纯虚函数的概念,将函数定义为纯虚函数(方法:virtual ReturnType Function());则编译器要求在若干派生类非抽象类,则在派生类中必须予以重载以实现多态性,同时含有纯虚拟函数的类称为抽象类,他不能生成对象。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics