Ce n' “statique " enum” signifie en C++?

Je suis récemment tombé sur ceci:

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

Il compile et fonctionne sous Microsoft VS2005. Cependant, je ne suis pas sûr de ce que la "statique" modificateur est censé faire. Est-elle différente de la suivante?

enum Response {
    NO_ERROR=0,
    MISSING_DESCRIPTOR,
    ...
};
  • Est-il dans un fichier d'en-tête ou un fichier cpp?
  • Juste essayé dans Visual Studio 2008 et il compile sans plainte il y a trop. Bizarre.
  • Afin de clarifier son dans une .fichier cpp et il n'y a aucun nom de la variable entre}; et Ce n'est pas une déclaration de variable.
  • Tous les compilateurs ont des bugs 🙂
  • La page msdn détaillant comment déclarer une enum dans VS2005, VS2008, et VS2010 (msdn.microsoft.com/en-us/library/2dzy4k6e.aspx) ne fait aucune mention de static. Probablement un bug qu'il permet, à l'époque.
InformationsquelleAutor Marcin K | 2011-02-11