Рассмотрим класс:
MyClass {
int varA;
int varB;
};
У меня есть вектор указателей на объекты MyClass:
std::vector<MyClass*> Vec;
Я хочу отсортировать вектор в соответствии с varA или varB с помощью той же функции сортировки, то есть:
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 это невозможно. Какой был бы самый элегантный способ для этого без использования внешних библиотек?