Vorwärtsdeklaration für STL-Container
-
Siehe Topic, meine bisherigen Versuche wurden vom Compiler strikt abgelehnt^^ Wer weis was dazu?
-
Geht nicht standardkonform.
Nach den im Standard vorgeschriebenen Templateparametern darf die Implementation eigene hinzufügen, die dann einen Default haben müssen. Das macht es unmöglich, eine allgemeingültige Forwarddeklaration hinzuschreiben.
Einzige Ausnahme: IOStreams. Da gibt's den Header <iosfwd>, der korrekte Forwards zur Verfügung stellt.
-
ich habe vector<CString>, kann ich davon ne Vorwärtsdeklaration machen? also den Typ möchte ich ja schon angeben
-
std::vector< CString, allocator<CString> ??? >
An der Stelle mit den ??? Kann die Implementation irgendwelche Parameter haben. Die weißt Du nicht und sie unterscheiden sich von Implementation zu Implementation. (Viele Impls haben keine, aber es wird explizit drauf hingewiesen, dass da welche definiert werden dürfen). Du müsstest sie aber hinschreiben, wolltest du ein gültiges Forward haben.
-
achso ok danke