- 背景
存在一个数组,vector nums{1,1,1,1,1},这个数组必须要有重复值
我想要对其进行排序,我想要让其从小到大排序,便自定义sort的第三个参数,代码如下:
sort(nums.begin(), nums.end(), [](const int& a, const int& b)
{
if (a != b) return a < b;
return true;
});
这段代码会报错,具体原因我不知道,所以想来问问大家。
- 疑点
但是用下面的代码进行排序,却没有问题。
sort(nums.begin(), nums.end(), [](const int& a, const int& b)
{
return a < b;
});
这段代码和上面我实现的代码,按理来说都不会有问题才对,但是上面的代码会报错。
麻烦各位兄弟姐妹帮我看看,究竟问题出在哪里,谢谢大家。