gpt4 book ai didi

c++ - 对 "vtable for Menu"的 undefined reference

转载 作者:搜寻专家 更新时间:2023-10-31 01:47:22 24 4
gpt4 key购买 nike

我试图创建一个子类,在类构造函数上我得到错误 Undefined reference to "vtable for Menu" 这很奇怪,因为我用相同的代码创建了许多子类.

class GameState
{
public:
virtual ~GameState(){};
virtual void handle_events() = 0;
virtual void logic() = 0;
virtual void render() = 0;
};

class Level: public GameState
{
private:
public:
Level();
~Level();
void handle_events();
void logic();
void render();
};

Level::Level() // OK
{
}

~Level::Level()
{
}

class Menu : public GameState
{
private:
public:
Menu();
~Menu();
void handle_events();
void logic();
void render();
};

Menu::Menu() // ERROR
{
}

~Menu::Menu()
{
}

我做错了什么?

最佳答案

您的波浪号 (~) 在析构函数中的位置错误:

~Menu::Menu()
{
}

应该是:

Menu::~Menu()
{
}

您还需要提供其他三个虚函数的定义。

关于c++ - 对 "vtable for Menu"的 undefined reference ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19234018/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com