在C++中,使用lambda表達式進行排序時,可以通過lambda表達式中的參數進行自定義排序。以下是一些使用lambda表達式進行排序的技巧:
std::vector<int> vec = {5, 2, 9, 3, 7};
std::sort(vec.begin(), vec.end(), [](int a, int b) {
return a < b;
});
std::vector<std::string> vec = {"apple", "banana", "orange", "grape"};
std::sort(vec.begin(), vec.end(), [](const std::string& a, const std::string& b) {
return a.size() < b.size();
});
std::vector<int> vec = {5, 2, 9, 3, 7};
std::sort(vec.begin(), vec.end(), [](int a, int b) {
return a > b;
});
struct Person {
std::string name;
int age;
};
std::vector<Person> vec = {{"Alice", 25}, {"Bob", 30}, {"Charlie", 20}};
std::sort(vec.begin(), vec.end(), [](const Person& a, const Person& b) {
return a.age < b.age;
});
這些是一些使用lambda表達式進行排序的技巧,可以根據具體的需求進行自定義排序規則。