Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[C++][SDL] Problem przy plikach nagłówkowych.

Ostatnio zmodyfikowano 2014-05-03 23:49
Autor Wiadomość
ArgonZapan
Temat założony przez niniejszego użytkownika
[C++][SDL] Problem przy plikach nagłówkowych.
» 2014-05-03 23:16:59
Witam
Podzieliłem program na 3 pliki:

board.h
board.cpp
main.cpp

w board.h dołączyłem bibliotekę SDL.h
Dopóki wszystko co jest związane z SDL'em jest w main.cpp to działa, ale jak chcę przerzucić np:
C/C++
SDL_Surface * ekran = NULL;
SDL_Surface * obraz = NULL;
SDL_Surface * black_field = SDL_LoadBMP( "blackfield.bmp" );
SDL_Surface * black_field_b = SDL_LoadBMP( "black_field_b.bmp" );
SDL_Surface * black_field_b_k = SDL_LoadBMP( "black_field_b_k.bmp" );
SDL_Surface * black_field_w = SDL_LoadBMP( "black_field_w.bmp" );
SDL_Surface * black_field_w_k = SDL_LoadBMP( "black_field_w_k.bmp" );
SDL_Surface * white_field = SDL_LoadBMP( "white_field.bmp" );
SDL_Surface * _black_field = SDL_LoadBMP( "_blackfield.bmp" );
SDL_Surface * _black_field_b = SDL_LoadBMP( "_black_field_b.bmp" );
SDL_Surface * _black_field_b_k = SDL_LoadBMP( "_black_field_b_k.bmp" );
SDL_Surface * _black_field_w = SDL_LoadBMP( "_black_field_w.bmp" );
SDL_Surface * _black_field_w_k = SDL_LoadBMP( "_black_field_w_k.bmp" );
SDL_Surface * _white_field = SDL_LoadBMP( "_white_field.bmp" );
do board.h, to wywala mi błędy typu:
error LNK2005: "struct SDL_Surface * ekran" (?ekran@@3PAUSDL_Surface@@A) already defined in board.obj

O co chodzi w tych błędach ??? Jak mogę podzielić kod źródłowy na osobne pliki. Używam Visual Studio 2013 Ultimate
P-109238
RobCod
...
» 2014-05-03 23:33:06
W pliku nagłówkowym można deklarować zmienne, funkcje itp. Natomiast ty chcesz tam zdefiniować zmienne. ;) Definiować zmienne, możesz w plikach źródłowych, w tym przypadku board.cpp, main.cpp.

Pozdrawiam!

PS. http://cpp0x.pl/kursy/Kurs-C++​/Dzielenie-kodu-na-kilka-plikow​-zrodlowych​/310
P-109240
ArgonZapan
Temat założony przez niniejszego użytkownika
» 2014-05-03 23:49:25
ale zlamiłem :D Dzięki :)
P-109242
« 1 »
  Strona 1 z 1