19. Januar 2018
Wie kann man ueber ein enum iterieren
Wie kann man über ein enum iterieren?
Die Standard-Operatoren, wie ++ oder + = können nicht verwendet werden. Das heißt, dass ein Enum nicht wirklich zum Durchlaufen in einer Schleife gedacht ist. Der typische Umgang mit einem Enum besteht darin, es in einer switch-Anweisung zu verwenden. Hier eine Möglichkeit:
enum Test { eins = 1, zwei = 2, def = 255 };
int main() { std::vector<Test> a; a.push_back(eins); a.push_back(zwei); a.push_back(def); for (std::vector<Test>::iterator it = a.begin(); it != a.end(); it++) { switch (*it) { case eins: { printf("eins\n"); break; } case zwei: { printf("zwei\n"); break; } case def: { printf("def\n"); break; } default: { printf("default\n"); break; } } } cin.get(); return 0; }
Viel Spaß damit!
Ersin Söbütay
Aufrufe: 1222
About The Author
soebuetay
Blogger Softwareberater & -entwickler