Was bedeutet "statische Aufzählung" in C ++?

Kurzem stieß ich auf dieses:

static enum Response{
    NO_ERROR=0,
    MISSING_DESCRIPTOR,
    ...
};

Es kompiliert und funktioniert unter Microsoft VS2005. Allerdings bin ich mir nicht sicher, was die 'statische' modifier tun soll. Ist es da anders aus?

enum Response {
    NO_ERROR=0,
    MISSING_DESCRIPTOR,
    ...
};
Kommentar zu dem Problem
Ist es in einer header-Datei oder einer cpp-Datei? Kommentarautor: wheaties
Habe es gerade ausprobiert in Visual Studio 2008 und es kompiliert ohne Beanstandung auch dort. Komisch. Kommentarautor: GrahamS
Zu klären sein in einem .cpp-Datei, und es gibt keine Variablennamen zwischen } und ; Es ist keine Deklaration von Variablen. Kommentarautor: Marcin K
Alle Compiler haben Fehler 🙂 Kommentarautor: James McNellis
Auf der msdn-Seite detailliert, wie deklarieren Sie eine enum in VS2005, VS2008 und VS2010 (msdn.microsoft.com/en-us/library/2dzy4k6e.aspx) macht keine Erwähnung von static. Wahrscheinlich ein bug, der es ermöglicht es dann. Kommentarautor: James

InformationsquelleAutor der Frage Marcin K | 2011-02-11

Schreibe einen Kommentar