c ++中的虚函数需要一个实现而没有实现它会给出错误

virtual function in c++ need an implemetation without implemetation its giving an error

#include <iostream>

using namespace std;

class A{
public:
  int a;
  virtual void fun();
};

int main(){A obj;}

获取对 'vtable for A' 的未定义引用错误。 我想知道为什么没有实现虚函数给出这种类型的错误。

那是因为你在声明函数(无论是普通成员函数还是虚函数)但你没有在任何地方定义它..!!

你可以试试这个方法,编译成功运行!

class A{ public:int a; virtual void fun(){}; };

int main(){ A obj; }