小编Twi*_*uff的帖子

错误:"分配抽象类类型的对象"尽管实现了所有虚函数

我收到错误"分配抽象类类型'MainGame的对象",即使已经实现了所有虚函数.以下是相关代码段:

main.cpp中

#include "Gamestate_MainGame.h"

int main() {
    Game game;
    if (game.init(new MainGame))
        game.loop();
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

Gamestate.h

#ifndef Gamestate_h
#define Gamestate_h
#include <SDL2/SDL.h>
#include "Game.h"

class GameState {
public:
    virtual bool init(Graphics* graphics, Game* game) = 0;
    virtual void quit() = 0;

    virtual void handleEvents(SDL_Event* e) = 0;
    virtual void logic() = 0;
    virtual void render() = 0;

protected:
    Game* game = NULL;
    Graphics* graphics = NULL;
};
#endif
Run Code Online (Sandbox Code Playgroud)

Gamestate_MainGame.h

#ifndef Gamestate_MainGame_h
#define Gamestate_MainGame_h
#include <vector>
#include <SDL2_mixer/SDL_mixer.h>
#include "Gamestate.h" …
Run Code Online (Sandbox Code Playgroud)

c++ xcode sdl

-5
推荐指数
1
解决办法
1268
查看次数

标签 统计

c++ ×1

sdl ×1

xcode ×1