Sınıfı göz önünde bulundurun:Bir std :: vector sort işlevine bir parametre iletebilir miyim?
MyClass {
int varA;
int varB;
};
MyClass nesnelerine bir işaretçi vektörüne sahibim:
std::vector<MyClass*> Vec;
Aynı sıralama işlevini kullanarak varA veya varB'ye göre vektörü sıralamak istiyorum, örneğin:
bool SortFunction(const MyClass* obj1, const MyClass* obj2, const short type) {
if(type == VARA_ID)
return obj1->varA < obj2->varA;
else if(type == VARB_ID)
return obj1->varB < obj2->varB;
}
AFAICT bu mümkün değil. Dış kütüphaneleri kullanmadan en şık yolu ne olurdu?
İşaretçi nesnelerin vektörünü neden kullanıyorsunuz? –