C ++ SDL窗口冻结和SDL问题

时间:2018-11-17 17:19:29

标签: c++ sdl

SDL惹恼了我,请帮助。 我试图显示一个窗口,这是代码:

#include <iostream>
#define SDL_MAIN_HANDLED
#include "SDL.h"

int main()
{
    if (SDL_Init(SDL_INIT_VIDEO) != 0) {
        std::cout << "SDL_Init Error: " << SDL_GetError() << std::endl;
        return 1;
    }
    SDL_Window *window = SDL_CreateWindow("Game", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 600, 480, SDL_WINDOW_SHOWN);
    if (window == NULL)
        return 1;
    SDL_Event event;
    bool running = true;
    while (running) {
        while (SDL_PollEvent(&event)) {
            switch (event.type) {
                case SDL_QUIT:
                    running = false;
                    break;
            }
        }
    }
    SDL_Quit();
    std::cout << "Hello :)" << std::endl;
    return 0;
}

现在,问题是它表明程序现在正在响应,并且我有一个用于鼠标的“正在加载”图标。第二个问题是由于某种原因我不能使用SDL_INIT_EVERYTHING,当我尝试在init之后输出时,它只会卡住并且没有输出。 我尝试了多个sdl文件x86和x64。 我有Windows 10 64位操作系统。 我真的开始失去理智,请帮助。

编辑:

该窗口可与SDL_INIT_EVERYTHING完美配合,但计算机需要花1分钟50秒来加载所有内容。这是很多时间。

但是当我仅初始化SDL_INIT_VIDEO时,它没有响应。 有什么办法吗?

1 个答案:

答案 0 :(得分:1)

好的,所以我下载了一个较旧的版本2.0.5,而不是新的“稳定”版本,看起来好像可以使用。我猜新版本只是存在需要修复的错误。