2016-08-02 10 views
0

У меня есть следующие основные функции:Нерешенные Внешние _main в консольном приложении

int main(int argv, char** argc) { 
MainGame mainGame; 
mainGame.run(); 

system("pause"); 
return 0; 
} 

это бросить LNK2019 неразрешенный _main у меня.

Теперь я сделал немного google-ing и нашел множество примеров людей, которые случайно не установили приложения win32 вместо целевого консольного приложения, поэтому я проверил мое в подсистеме linker-> system-> и прочитал консоль.

+1

Включите ли вы что-нибудь, что может переопределить 'main'? Видя 'MainGame mainGame;' Я предполагаю, что вы используете 'sdl', если так попробуйте' #undef main' – DimChtz

+0

Показать командные строки компилятора и компоновщика. И btw, 'lnk2019' предполагает, что вы используете некоторую версию VC++, но вы должны указать это в вопросе. – dxiv

+0

Итак, вы действительно добавили файл, содержащий ваш 'main', в проект, который вы пытаетесь скомпилировать? – AnT

ответ

0

При использовании SDL возникла аналогичная проблема. Я добавил #undef main после #include "SDL.h", так как main был определен внутри SDL для какой-то другой цели (как указал DimChtz в комментариях). Он решил проблему.

Кстати, это не должно быть специфичным для SDL. Некоторые другие включенные заголовочные файлы или исходный файл в вашем проекте также могут быть # define-ing «main», что вызовет такое поведение.

 Смежные вопросы

  • Нет связанных вопросов^_^