Jaklub Opublikowano 16 Lipca 2009 Udostępnij Opublikowano 16 Lipca 2009 próbuję przenieść swój projekt z C na C++ żeby móc używać Zoidcoma. ale, kiedy próbuję wszystko skompilować, mam ciągle błędy: multiple definition of `bufor' first defined here multiple definition of `terrain' first defined here multiple definition of `gówno nie chce mi się dalej tego wymieniać' itp itd wie ktoś, co z tym zrobić? przykładowe pliki nagłówkowe wyglądają u mnie tak: global.h (powycinane kawałki) #ifndef _global_h_ #define _global_h_ #include <allegro.h> BITMAP *load_a_pcx(const char* filename); [...] BITMAP *bufor; [...] #endif global.cpp (też powycinane kawałki) #include <allegro.h> #include "global.h" #include "worms.h" [...] // load_a_pcx BITMAP *load_a_pcx(const char* filename) { [...] } [...] gameplay.h (cały) #ifndef _gameplay_h_ #define _gameplay_h_ #include <allegro.h> void Gameplay(); #endif gameplay.cpp (wycięta zawartość void Gameplay()) #include <allegro.h> #include "worms.h" #include "global.h" #include "ingame_graphics.h" #include "objects.h" void Gameplay() { [...] } w C wszystko działa. gdzie w ogóle można znaleźć jakieś informacje na temat pisania plików nagłówkowych? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kofel Opublikowano 16 Lipca 2009 Udostępnij Opublikowano 16 Lipca 2009 a extern "C" ? Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Will Opublikowano 16 Lipca 2009 Udostępnij Opublikowano 16 Lipca 2009 jeśli chodzi o zmienne globalne: plik nagłówkowy: extern unsigned costam; plik cpp: unsigned costam=12; Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Jaklub Opublikowano 16 Lipca 2009 Autor Udostępnij Opublikowano 16 Lipca 2009 extern już próbowałem, a extern "C" nie bardzo wiem jak użyć w projekcie. dalej potrzebuję pomocy HALP Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Kofel Opublikowano 16 Lipca 2009 Udostępnij Opublikowano 16 Lipca 2009 No bo np. jak Lua jest dla C, to gdy robisz include jej plików nagłówkowych to musisz to objąć w extern "C" { } Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Jaklub Opublikowano 16 Lipca 2009 Autor Udostępnij Opublikowano 16 Lipca 2009 zdaje mi się, że już sobie poradziłem, ale jeszcze nie zamykam tematu, bo być może zadam jeszcze jakieś pytanie. wielkie dzięki za pomoc Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się