Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Verständnisfrage zu Vergleichsoperatoren

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
21.08.2006, 13:09 Uhr
Yadgar



High!

Nachdem ich jetzt endlich mit den Rechenoperatorfunktionen für meine Feldklasse fertig bin (schwere Geburt...), knöpfe ich mir jetzt die Vergleichsoperatoren vor. Jetzt schreibt Aupperle allerdings, dass Vergleichsoperatorfunktionen als globale Funktionen zu definieren sind - sind klassengebundene Vergleichsoperatorfunktionen grundsätzlich nicht möglich?

Bis bald im Khyberspace!

Yadgar
--
Flagmaker - ein Programmier-Blog
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
21.08.2006, 16:07 Uhr
Th



Doch sie sind schon möglich, aber bei Klassen-Operatoren ist der linke Operand stets das Klassenobjekt. Aber wenn du Vergleiche mit anderen Datentypen machen willst, dann möchtest du ja auch z.B. folgendes schreiben:

C++:
A a; // deine Klasse
int x = 42;
if (x == a)
{

}


Bei == wird dann der globale Operator ==(int, const A&) aufgerufen, anstatt der klassenbezogenen Operator A::operator ==(int).

Wenn du aber nur Vergleiche mit deiner eigenen Klasse hast, also z.B. a1 == a2, dann kannst du auch den klassenbezogenen Operator definieren.

Dieser Post wurde am 21.08.2006 um 16:08 Uhr von Th editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: