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

extern enum?

Ostatnio zmodyfikowano 2016-08-13 15:04
Autor Wiadomość
2dpcpl
Temat założony przez niniejszego użytkownika
extern enum?
» 2016-08-13 13:06:45
Witam,
w pliku main.cpp mam sobie enuma o nazwie GameState, czyli
C/C++
enum Gamestate { /*tutaj wartości*/ };
GameState gamestate;
i chciałbym go w innym pliku użyć. Co powinienem wpisać w pliku nagłówkowym tego pliku, w którym będę go używać?
Bo niestety, ale
extern enum GameState;
ani
extern GameState gamestate;
nie chcą działać.
Pytanie może głupie, ale nie znalazłem na nie odpowiedzi :/
P-150798
kistel66
» 2016-08-13 13:37:19
A dołączyłeś odpowiedni ".h" do pozostałych plików?
Jakby to nie działało, możesz spróbować zrobić statycznego enuma w pliku nagłówkowym
P-150799
2dpcpl
Temat założony przez niniejszego użytkownika
» 2016-08-13 13:43:11
W pliku main.cpp mam
C/C++
#include "MainMenu.hpp"
// ...
enum GameState { /*tu wartości*/ };
GameState gamestate;

a w plik MainMenu.hpp miałem tego externa dać, niestety nie działa :/
P-150800
2dpcpl
Temat założony przez niniejszego użytkownika
» 2016-08-13 15:04:11
Problem rozwiązany.
Deklaracja i definicja enuma przeniesiona do MainMenu.hpp.
Wtedy już w MainMenu.cpp wystarczyło dodać:
GameState gamestate;

a w MainManu.hpp dopisać jeszcze:
extern GameState gamestate;

Nie wiem do końca czemu, ale działa we wszystkich plikach, które include'ują MainMenu.hpp.
P-150802
« 1 »
  Strona 1 z 1