Ich versuche korrekt Vorwärtsdeklaration für enums zu verwenden. Deshalb habe ich das Internet durchsucht, aber ich kann nichts finden, was funktioniert.Enum Forward Declaration
ich in einem Header bin mit:
// Forward declaration
enum myEnumProcessState;
Ich verwende dieses Enum dann in einer Struktur:
struct myStruct {
[...]
myEnumProcessState osState;
[...]
};
Und in einem anderen Header:
enum myEnumProcessState {
eNotRunning,
eRunning
};
I fand heraus, dass der Typ in die enum forward-Deklaration aufgenommen werden sollte, um akzeptiert zu werden. Allerdings weiß ich nicht, welchen "Typ" ich für einen Prozessstatus setzen soll. Diese funktionieren nicht:
enum myEnumProcessState : unsigned int;
enum myEnumProcessState : String;
ich die Vorwärts-Erklärung überspringen wollte, aber meine Struct weint, da sie kann es nicht mehr finden ...
Also ich bin ein wenig verwirrt. Kennst du eine Lösung?
Vielen Dank :)
warum müssen Sie es erklären weiterleiten kann? definierst du es nicht, bevor du es verwendest (das heißt, die Datei mit der Enumeration aufnehmen/die Enumeration in eine Datei verschieben, die in beiden Dateien enthalten sein kann) – Default
Nun ... es funktioniert, aber ich würde es wirklich tun Ich wollte es mit einer Forward-Deklaration machen Nun, wenn die einzige "saubere" Lösung ist es zu überspringen, werde ich ... –
Ich weiß eigentlich nicht, ob es eine Lösung für diese .. Ich scheitere jedoch Siehe die Grund, warum Sie es tun möchten .. – Default