Ich habe diese einfache Klasse:lower_bound für Vektor <MyClass*>
class MyClass {
public:
int id;
string name;
};
Ich möchte einen Vektor mit Zeigern auf Objekte dieser Klasse haben, die von der referenzierten MyClass
id
sortiert ist. Ich dachte, dass mit wäre einfach, ich habe es vorher mit Vektoren von Objekten (nicht Zeiger). Bei Objekten, überlastete ich operator<
wie folgt aus:
bool operator<(MyClass left, int right) {
return (left.id < right);
}
Dann habe ich lower_bound
neue MyClass
Objekt sortiert Vektor einzufügen.
vector<MyClass>::iterator low;
low = lower_bound(vectorname.begin(),vectorname.end(),id);
prP = idContainer.begin();
prP = idContainer.insert(low, newobject);
Ich bin verloren, wie das gleiche mit dem Vektor von MyClass
Zeigern zu tun. Kann mir jemand helfen, das zu erreichen?
Vielen Dank Barry, das funktioniert für mich. – 703
+1 für den Hinweis, dass die Vergleichsfunktion für beide Parameter nicht den gleichen Typ haben muss. –