-2

我正在学习 C++ 课程,我复制了代码并完成了与课程中的导师在讲座中所做的完全相同的操作,但是当我这样做时,我收到了一个很长的错误“... undefined reference to `WinMain' “而且我不知道该怎么办。

我在 Windows 10(和 Cygwin,我不知道它是否相关)上使用 Eclipse Neon,这是我的代码:

`

#include <iostream>
#include <SDL.h>
using namespace std;

int main() {

cout << "!!!Hello World!!!" << endl; // prints !!!Hello World!!!
return 0;

} ` 代码可以在没有“#include”的情况下运行,但是当我添加这行代码时,运行它时会弹出错误(所以我猜这就是问题所在)。当课程中的导师运行此代码时,它可以正常工作并正确打印出文本。有人可以告诉我如何摆脱这个错误并让这个简单的程序运行吗?

4

1 回答 1

2

https://wiki.libsdl.org/FAQWindows#I_get_.22Undefined_reference_to_.27WinMain.4016.27.22

我得到“对'WinMain@16'的未定义引用”

在 Visual C++ 下,您需要与 SDL2main.lib 链接。在包括Dev-C++在内的gcc构建环境下,需要链接“sdl-config --libs”的输出,通常是:-lmingw32 -lSDL2main -lSDL2 -mwindows

于 2016-09-18T18:43:08.213 回答