用c++为sort和cmp搭配使用举个例子
时间: 2025-01-05 21:41:16 浏览: 52
以下是一个使用C++中sort函数和自定义cmp函数搭配使用的例子:
```cpp
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
// 自定义比较函数
bool cmp(int a, int b) {
return a > b; // 降序排列
}
int main() {
// 创建一个整数向量
vector<int> nums = {4, 2, 5, 1, 3};
// 使用sort函数和自定义cmp函数进行排序
sort(nums.begin(), nums.end(), cmp);
// 输出排序结果
cout << "排序后的结果:";
for (int num : nums) {
cout << num << " ";
}
cout << endl;
return 0;
}
```
在这个例子中:
1. 我们定义了一个自定义比较函数 `cmp`,它接受两个整数参数并返回一个布尔值。这个函数用于实现降序排列。
2. 在 `main` 函数中,我们创建了一个整数向量 `nums` 并初始化了一些值。
3. 我们使用 `sort` 函数对向量进行排序。`sort` 函数的参数包括起始迭代器、结束迭代器和比较函数。在这里,我们将 `nums.begin()` 和 `nums.end()` 作为起始和结束迭代器,并将 `cmp` 作为比较函数传递。
4. 最后,我们遍历并输出排序后的向量。
这个例子展示了如何将自定义比较函数与 `sort` 函数结合使用,以实现特定的排序需求。在这个案例中,我们实现了降序排列,但通过修改 `cmp` 函数,我们也可以实现其他复杂的排序逻辑。
阅读全文
相关推荐


















