我有一个 long long 类型的向量并希望按升序对其进行排序,但我认为我误解了 std::sort() 的用法。
#include <vector>
#include <algorithm>
#include <functional>
...
std::vector<long long> numbers (4);
numbers[0] = 6;
numbers[1] = 4;
numbers[2] = 3;
numbers[3] = 7;
我曾尝试使用:
std::sort(numbers.begin(), numbers.end(), std::greater<long long>());
但我收到一个错误,上面写着
std::vector<long long int>’ is not derived from ‘const std::basic_string<_CharT, _Traits, _Alloc>’
另外,理想情况下,我只想在两个元素之间对向量进行排序,例如在 numbers[1] 和 numbers[2] 之间;但是对前两个参数使用这些值似乎不起作用。
谢谢。
编辑:另外,我正在使用 g++ 编译器