可能重复:
C++中的纯虚析构函数
我有两个类:抽象的“Game”类和派生的“TestGame”类。 TestGame中的所有函数都是单独实现的(为了让它编译)。 我只得到一个错误:
TestGame.obj : error LNK2019: unresolved external symbol "public: virtual __thiscall Game::~Game(void)" (??1Game@@UAE@XZ) referenced in function "public: virtual __thiscall TestGame::~TestGame(void)" (??1TestGame@@UAE@XZ)
这是我的类定义:
class Game
{
public:
virtual ~Game(void) = 0;
virtual bool Initialize() = 0;
virtual bool LoadContent() = 0;
virtual void Update() = 0;
virtual void Draw() = 0;
};
class TestGame: public Game
{
public:
TestGame(void);
virtual ~TestGame(void);
virtual bool Initialize();
virtual bool LoadContent();
virtual void Update();
virtual void Draw();
};
我尝试了几件事情,但是感觉可能我对于抽象类和派生类的工作原理有一些基本的东西不太清楚。
virtual
关键字是可选的,这与标准有关。也许它们是助记符,这没问题。 - Sandburg