在使用lambda表達式進行降序排序時,可以使用std::sort
函數并傳入一個lambda表達式作為排序準則。下面是一個示例代碼,實現對一個vector容器中的元素進行降序排序:
#include <iostream>
#include <vector>
#include <algorithm>
int main() {
std::vector<int> vec = {5, 2, 9, 1, 3};
// 使用lambda表達式進行降序排序
std::sort(vec.begin(), vec.end(), [](int a, int b) {
return a > b; // 降序排序
});
// 輸出排序結果
for (int num : vec) {
std::cout << num << " ";
}
std::cout << std::endl;
return 0;
}
在上面的代碼中,通過lambda表達式[](int a, int b) { return a > b; }
指定了降序排序的準則,即如果a大于b則返回true,否則返回false。將這個lambda表達式傳入std::sort
函數中,就可以實現對vector容器中的元素進行降序排序。最終輸出結果為9 5 3 2 1
。