我想使用 SDL2 制作游戏,但我无法编译和/或运行我的代码,请帮助!
众所周知,SDL2 很难设置,它通常是有抱负的游戏开发人员尝试使用的第一个库。
这篇文章旨在作为设置 SDL2 的常见问题的规范副本。
这是我的代码:
Lib.h
#ifdef ExportLib
#define Lib __declspec(dllexport)
#else
#define Lib __declspec(dllimport)
#endif
extern void Lib Launch();
Run Code Online (Sandbox Code Playgroud)
Lib.cpp
#include <SDL/SDL.h>
#include "Lib.h"
void Launch() {
SDL_Init(SDL_INIT_EVERYTHING);
SDL_Window* win = SDL_CreateWindow("Untitle", 100, 100, 400, 400, 0);
SDL_DestroyWindow(win);
SDL_Quit();
}
Run Code Online (Sandbox Code Playgroud)
我将此代码构建到静态库.然后我创建了一个新的源文件并使用了这个库.
main.cpp中
#include "Lib.h"
int main() {
Launch();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
最后,我使用我的静态库编译main.cpp,而不定义SDL_main和SDL的依赖.工作正常,窗口出现.
但是真的很好吗?我失去了哪些功能呢?