mkScheller Geschrieben 20. Mai 2007 Geschrieben 20. Mai 2007 Hi, ich habe eine Klasse Vector2D die einen x- und y-Wert speichert und diverse Funktionen zur Verfügung stellt (..). Nun möchte ich eine Membermethode implementieren, die mir den x- und den y-Wert ausgibt und das als String, in der Form "(x,y)", sodass ich beispielsweise folgendes aufrufen kann: cout << "vector1=" << vector1.getString() << " in cm" << endl; und nicht immer cout << "vector1=(" << vector1.x() << "," << vector1.y() << ") in cm" << endl; Wie geht das? Geht das überhaupt? MFG Zitieren
Klotzkopp Geschrieben 21. Mai 2007 Geschrieben 21. Mai 2007 Das geht sogar ohne getString()-Methode: Du musst nur einen Ausgabeoperator für deine Klasse schreiben: std::ostream& operator<<(std::ostream& stream, const Vector2D& v ) { stream << '(' << v.x() << ',' << v.y() << ')'; return stream; }[/code] Dann kannst du deine Objekte einfach so ausgeben: [code]cout << "vector1=" << vector1 << " in cm" << endl; Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.