Если у меня есть вектор пар:
std::vector<std::pair<int, int> > vec;
Есть ли и простой способ сортировки списка в порядке возрастания на основе второго элемента пары?
Я знаю, что могу написать небольшой объект функции, который будет выполнять эту работу, но есть ли способ использовать существующие части STL и std::less
для выполнения работы напрямую?
EDIT: Я понимаю, что я могу написать отдельную функцию или класс, чтобы перейти к третьему аргументу для сортировки. Вопрос в том, могу ли я построить его из стандартных материалов. Я бы действительно выглядел так:
std::sort(vec.begin(), vec.end(), std::something_magic<int, int, std::less>());