Verschachtelte Klassen? Namespace?
-
Hi.
Ich habe nix brauchbares in der Suche gefunden.
Es geht darum, ich habe eine verschachtelte Klasse die sieht in etwa so aus:classes.h: class ClassA { public: ClassA(); ~ClassA(); class ClassB { public: ClassB(DWORD); private: /*versch. variablen*/ }; class ClassC { public: ClassC(DWORD); private: /*versch. variablen*/ }; private: /*versch. variablen*/ };
und jetz hab ich die datei classes.cpp:
#include "classes.h" /*Konst- u. Destruktor von classa usw.*/ ClassB::ClassB(DWORD dwParam) { /*Do something*/ } ClassC::ClassC(DWORD dwParam) { /*Do something*/ }
und jetz sagt mir der compiler in der zeile "ClassB::ClassB(DWORD dwParam) {" dass ClassB kein richtiger identifier oder namespace is.
Wenn ich alles von ClassB auskommentiere sagt er mir das gleiche über ClassCMuss ich auf die funktionen von verschachtelten klassen anders zugreifen oder wo kann der fehler liegen?
Ich hoff ich hab mich richtig ausgedrücktdanke schon im voraus
-
Hallo,
Genau, du musst anders zugreifen.
z.Bsp so#include "classes.h" /*Konst- u. Destruktor von classa usw.*/ ClassA::ClassB::ClassB(DWORD dwParam) { /*Do something*/ } ClassA::ClassC::ClassC(DWORD dwParam) { /*Do something*/ }
Immerhin sind B unC innerhalb von A deklariert (siehe Namensauflösung).
Ciao