Weiterleitungsdeklaration innerer Klassen
Es kann wünschenswert sein, auf verschachtelte Klassen zu verweisen, ohne deren definierende Header-Datei einzuschließen. Der Versuch, deklarierte innere Klassen außerhalb ihrer enthaltenden Klasse weiterzuleiten, kann jedoch zu Kompilierungsfehlern führen.
Betrachten Sie das folgende Beispiel:
class Container { public: class Iterator { ... }; ... }; class Foo { void Read(Container::Iterator& it); };
Das Kompilieren dieses Codes führt aufgrund der Unvollständigkeit zu Fehlern Art des Containers und die nicht deklarierte Information Variable.
Lösung
Leider ist es nicht möglich, deklarierte innere Klassen außerhalb ihrer enthaltenden Klasse weiterzuleiten. Der C-Standard lässt diese Syntax nicht zu. Um dieses Problem anzugehen, sind daher alternative Lösungen erforderlich:
Das obige ist der detaillierte Inhalt vonWie kann ich verschachtelte C-Klassen weiterleiten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!