operatorüberladung meldet fehler
-
Hi!
Ich habe einen kleine Klasse geschrieben, die eine übergebene Klasse mit dynamischer Liste in eine Datei schreiben soll:class Ausgabedatei { public: Ausgabedatei(const char *dName, int Seed) : Dateiname(dName), seed(Seed) { AD.open(Dateiname, ios::out | ios::binary); } ~Ausgabedatei(){AD.close();} Ausgabedatei& operator<<(CodierterText CT) { CT.liste.SetAnfang(); AD<<seed; AD<<' '; while (CT.liste.isValid()) { AD<<CT.liste.get(); CT.liste.inc(); } AD<<CT.liste.get(); } private: Ausgabedatei(const Ausgabedatei&); fstream AD; const char *Dateiname; int seed; }wenn ich diese Klasse includen will, kommt der folgende Fehler vom Compiler:
expected unqualified-id at end of input expected `,' or `;' at end of inputund zeigt auf die mit den Pfeil markierte Zeile
AD<<CT.liste.get(); } <= private:
-
Kann ich nicht nachvollziehen, ich krieg mit deinem Code folgendes:
prog.cpp:10: error: declaration of ‘operator<<’ as non-function prog.cpp:10: error: expected ‘;’ before ‘(’ token, vermutlich weil "CodierterText" dem Compiler völlig unbekannt ist.
Siehe die zwei Links in meiner Signatur...
-
Schreib ein ; nach der schließenden geschweiften Klammer der Klassendeklaration hin.
-
Semikoloner schrieb:
Schreib ein ; nach der schließenden geschweiften Klammer der Klassendeklaration hin.
danke so hats geklappt
