== operator
-
Ist nicht gerade eine große Aktion:

bool operator != (class & other) { return (*this == other) ? false: true; }
-
Mathias schrieb:
Ist nicht gerade eine große Aktion:

bool operator != (class & other) { return (*this == other) ? false: true; //finde diesen operator schlecht }arghl
bitte so:
bool operator !=(class& other) { return !operator==(other); //operator == ist ja sicherlich auch überladen }
-
@ser1al
Ich wollte eigentlich nur das Prinzip aufzeigen nicht ein bis ins letzte optimierten Code.
-
Hi,
da der == Operator bereits implementiert ist, hab ich's halt einfach mal ausprobiert. Der Compiler hat nicht gemeckert und es läuft auch.
Trotzdem, eure Versionen wären natürlich auch einfach.
danke,
mvp
-
Hast du dich mit dem Debugger in den ==-Operator reingestellt?
-
ser1al schrieb:
bitte so:
bool operator !=(class& other) { return !operator==(other); //operator == ist ja sicherlich auch überladen }Bitte nicht so.
Denn op== und somit auch op!= passen besser global statt Member. Und wenn es denn als Member sein muss, beachte man wenigstens const-correctness.
Somit sieht der op!= idR so aus:
bool operator!=(Class const& objA, Class const& objB) { return !(a==b); }
-
Shade Of Mine schrieb:
ser1al schrieb:
bitte so:
bool operator !=(class& other) { return !operator==(other); //operator == ist ja sicherlich auch überladen }Bitte nicht so.
Denn op== und somit auch op!= passen besser global statt Member. Und wenn es denn als Member sein muss, beachte man wenigstens const-correctness.
Somit sieht der op!= idR so aus:
bool operator!=(Class const& objA, Class const& objB) { return !(a==b); }hast natürlich recht!

-
blöde Frage: hat das
Class const& objAie gleiche Bedeutung/Wirkung wie
const Class& objA? Ist mir nämlich noch nie untergekommen...
-
pumuckl schrieb:
blöde Frage: hat das
Class const& objAie gleiche Bedeutung/Wirkung wie
const Class& objA? Ist mir nämlich noch nie untergekommen...
glaub schon
-
Das ist das gleiche. Bei Referenzen gibts nur eine Sort von Konstanten. Bei Pointern kommt es drauf an was rechts und was links vom Sternchen steht.