Lieber Besucher, herzlich willkommen bei: RPG Studio - Make your World real. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

Dienstag, 27. Juli 2010, 23:57

Welche Operatoren überladen?

Hallo,

ich hätte eine Frage und zwar möchte ich gerne, folgende Konstruktion bauen können:

KLASSE test;
IRGENDEIN_OBJECT row;

while( (row=test.getRow()) ) {

}

nur weiß, ich nicht welchen Operator ich genau überladen muss?
muss ich den:
bool KLASSEN::operator==(){

}

oder eher den Zuweisungsoperator dabei überladen?

2

Mittwoch, 28. Juli 2010, 11:19

Weder noch. wenn du unbedingt einen der beiden Operatoren überladen willst müsstest du den Zuweisungsoperator überladen, aber ich würde es dir nicht empfehlen, da es auch andere Lösungen gibt
Vom Zuweisungsoperator erwartet man ja eigentlich, dass eine Referenz auf die Variable zurückgegeben wird daher würde ich das auch nicht ändern, sondern dir vorschlagen entweder
  • einen (Smart)pointer zurückzugeben, dann hast du automatisch die Möglichkeit etwas ungültiges zurückzugeben
  • Einen impliziten Cast nach bool für das Objekt einzuführen und dem Objekt die Möglichkeit geben ungültig zu sein. Nur Empfehlenswert, wenn sich das Objekt im ungültigen Zustand korrekt verhalten kann.
  • Einen Iterator zu schreiben und diesen zurückzugeben.(Je nach Beschaffenheit deiner "KLASSE" Klasse)

Ähnliche Themen

Social Bookmarks