小编Pup*_*ker的帖子

没有比较器或 lambda 函数的向量排序向量?

今天我遇到了一些我认为不会编译的 C++ 代码:

#include <vector>
#include <algorithm>
using namespace std;

int main() {
    vector<vector<int>> vectorOfVectors = { { 2, 3, 5 }, { 1, 2, 3 } };

    sort(vectorOfVectors.begin(), vectorOfVectors.end());

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

据我所知,C++ 中没有用于整数向量的默认比较器,因此必须实现自定义比较器或 lambda 函数才能将其传递给 sort() 函数。

然而,这段代码编译的事实让我想问这个问题;是否有整数向量的默认比较器?有没有花车、双打等的?还是编译器会自动生成?需要注意的是,这种对向量的向量进行排序的方式在网上是找不到的。

提前致谢!

c++ sorting lambda vector comparator

1
推荐指数
2
解决办法
360
查看次数

标签 统计

c++ ×1

comparator ×1

lambda ×1

sorting ×1

vector ×1