Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

BurningWave

Alter Hase

  • »BurningWave« ist der Autor dieses Themas

Beiträge: 1 106

Wohnort: Filderstadt/Konstanz

Beruf: Student

  • Private Nachricht senden

1

30.12.2010, 17:51

"<"-Operator für multiset korrekt überladen

Hallo,

wie der Titel schon sagt, möchte ich den "<"-Operator für eine Klasse überladen, so dass ich deren Objekte in einem STL-Container (multiset) ordnen kann. Das klappt eigentlich auch, jedoch bin ich mir mit einer Kleinigkeit nicht ganz sicher: Muss es

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
class CTemplateWrapper
{
public:
bool operator< (const CTemplateWrapper &rhs) const {
        return (rhs.ftest < ftest); //hier
    }

    CTemplate *pTemplate;
    float ftest;
};

oder

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
class CTemplateWrapper
{
public:
bool operator< (const CTemplateWrapper &rhs) const {
        return (ftest < rhs.ftest); //hier
    }

    CTemplate *pTemplate;
    float ftest;
};

heißen, wenn ich möchte, dass in dem multiset das Objekt mit dem kleinsten ftest an erster Stelle steht. Ich weiß ja, dass true als Rückgabewert bedeutet, dass das Objekt vor einem anderen Objekt eingefügt werden soll, aber ich weiß nicht, wie multiset::insert() den Oberator < anwendet.

mfg BurningWave

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

2

30.12.2010, 18:09

der übergebene wert steht auf der rechten seite. also das zweite^^
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

BurningWave

Alter Hase

  • »BurningWave« ist der Autor dieses Themas

Beiträge: 1 106

Wohnort: Filderstadt/Konstanz

Beruf: Student

  • Private Nachricht senden

3

30.12.2010, 18:15

OK danke :D

Oberon

Treue Seele

Beiträge: 181

Wohnort: Österreich

Beruf: Student

  • Private Nachricht senden

4

30.12.2010, 19:21

Deswegen nennst DU den Parameter auch rhs (RightHandSide).

BurningWave

Alter Hase

  • »BurningWave« ist der Autor dieses Themas

Beiträge: 1 106

Wohnort: Filderstadt/Konstanz

Beruf: Student

  • Private Nachricht senden

5

30.12.2010, 19:31

Jetzt weiß ich auch, für was rhs und lhs steht. ^^

Werbeanzeige