Ich habe eine Struktur wie diese in einer Header-Datei definiert:Siehe Enum innerhalb einer Struktur
struct MessageA {
enum Status {
eReady, eNotReady
};
};
Später, als ich versuche, diese Enumeration zu verwenden:
#include <MessageA.hh>
...
if(status != MessageA.Status.eReady) continue;
ich den Fehler :
expected primary-expression before '.' token
'Status' has not been declared
ich folgendes versucht und es funktionierte:
if(status != MessageA::eReady) continue;
Wenn jedoch Gebrauch:
if(status != MessageA::Status::eReady) continue;
Dann bekomme ich den Fehler:
Status is not a class or a namespace
Wenn ich den Namen des ENUM voll qualifiziert (wie wenn es mehr Aufzählungen spezifizieren erforderlich waren mit den gleichen Werten innen) Wie soll ich das machen?
'if (! Status = MessageA :: eReady) fortzusetzen;' –