c ++和SDL中的游戏程序。 'SLD_Flip'错误

时间:2012-07-06 02:03:44

标签: c++ sdl

我已经开始使用SDL在C ++中制作游戏。我的代码是:

的main.cpp

#include "SDL/SDL.h"
#include "gameSystem.h"

int main(int argc, char *args[])
{
    gameSystem systemHandler;
    SDL_Surface *buffer;
    SDL_Event event;
    while(event.type != SDL_QUIT)
    {
        SDL_PollEvent(&event);
        SLD_Flip(buffer);
    }
}

gameSystem.cpp

#include "SDL/SDL.h"
#include "gameSystem.h"

gameSystem::gameSystem()
{
    SDL_Init(SDL_INIT_EVERYTHING);
    SDL_WM_SetCaption("GameName", NULL);
    SDL_Surface *buffer;
    bool fullscreen = false;
    if (fullscreen == true)
        {buffer = SDL_SetVideoMode(640, 480, 32, SDL_SWSURFACE | SDL_FULLSCREEN);}
    else
        {buffer = SDL_SetVideoMode(640, 480, 32, SDL_SWSURFACE);}
}

gameSystem::~gameSystem()
{
    SDL_Quit();
}

gameSystem.h

class gameSystem
{
    public:
        gameSystem();
        ~gameSystem();
    private:
        SDL_Surface *buffer;
};

我的链接器选项包括:-lmingw32 -lSDLmain -lSDL -lwinmm -sdl_Mixer

我收到以下错误:“错误:'在此范围内未声明'SLD_Flip'”在main.cpp的第12行。

所有其他SDL功能似乎都没问题。

有谁知道如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

你拼错了。它应该是SDL_Flip,而不是SLD_Flip

另外,您尚未在buffer中初始化变量main。您没有在gameSystem::gameSystem()内设置其值;变量超出了范围。