L'initialisation statique tableau de chaînes de caractères (C++)?

Je ne peux pas pour la vie de me comprendre comment le faire correctement. J'ai une classe qui a besoin de stocker des constantes (le texte qui correspond à des valeurs de type enum) - je l'ai déclarée comme telle (publiquement) dans ma classe:

const static char* enumText[];

Et je suis en train de les initialiser comme ceci:

const char* MyClass::enumText[] = { "A", "B", "C", "D", "E" };

Cependant gcc me donne l'erreur suivante:

'const char* Maclasse::enumText[]' n'est pas un membre statique de la classe MyClass'

Ce que je fais mal? Merci!

Essayez: static const char* enumText[]; dans la classe?
Je soupçonne fortement que ce n'est quelques anciennes g++ version qui traite incorrectement const static char* [] y static char* [] const plutôt que static const char* [] (en raison de static être dans un "insolite").
Pourriez-vous coller une complète et compilable morceau de code dans votre réponse, qui montre le problème?

OriginalL'auteur Paul D. | 2009-09-03