虚函数与纯虚函数之间的区别

在本文中,我们将了解虚拟和纯虚拟功能之间的区别。

虚函数

  • 它在类中有自己的定义。

  • 基类可以覆盖虚拟函数。

  • 它没有派生类。

声明

virtual funct_name(parameter_list) {. . . . .};

纯虚函数

  • 没有定义。

  • 如果一个类至少具有一个虚函数,则可以将其声明为抽象。

  • 派生类必须重写纯虚函数才能使用它。

  • 通过在声明中放置“ = 0”来指定纯虚函数

声明

virtual funct_name(parameter_list)=0;

以下是一个例子-

示例

class Box {
   public:
   // 纯虚函数
   virtual double getVolume() = 0;
   private:
   double length; // 箱长
   double breadth; // 盒子的宽度
   double height; // 盒子高度
};