SDL игнорирует мой основной файл

Я использую Eclipse CDT 64bit с MinGW и SDL. Я уже читал, что SDL «умно» переопределяет метод main, и что иногда точно добавить #undef main, чтобы использовать мой собственный main cpp. Я уже сделал это, но когда я пытаюсь запустить свое приложение, мое основное полностью игнорируется (я ставлю некоторые контрольные точки, чтобы понять это).

Мой основной метод выглядит так:

#include "SDL/SDL.h"#include "SDL/SDL_image.h"
#undef main

using namespace std;

int main(int argc, char* argv[])
{

if (SDL_Init(SDL_INIT_EVERYTHING) == -1) {
printf("Error: %s\n", SDL_GetError());
return 1;
}

SDL_WM_SetCaption( "MarioKong", NULL );

В свойствах моего проекта я определил библиотеки MinGW C ++ Linker следующим образом: mingw32, SDLMain, SDL, SDL_image. Я следовал указаниям по установке SDL, как указано на (lazyfoo)

Как я могу запустить МОЙ основной файл?

0

Решение

умный способ переопределения main состоит в том, что у вас есть одна и та же функция main на всех платформах, и вы можете использовать ее везде. Так что нет #ifdef win32 WinMain, остальное main и т. Д. И вы можете использовать аргументы командной строки одинаково на всех платформах. Поэтому я советую придерживаться «int main (int argc, char * argv [])» и не использовать команду #undef main

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]