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