我在搜索如何按降序对 vector 进行排序然后我找到了这段代码
std::sort(numbers.begin(), numbers.end(), std::greater<int>());
它可以工作,但我只想知道它是如何工作的
最佳答案
std::sort
的第三个参数是一个返回 true
的仿函数/函数如果第一个参数要放在排序顺序中的第二个元素之前。
std::greater<int>::operator()(...)
返回 true
如果第一个参数大于第二个参数。
因此,使用 std::greater<int>()
作为 std::sort
的第三个参数导致对象集合按降序排序。
关于c++ - 在 C++ 中如何按降序排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50104725/