Lambda 표현식은 코드 단순화, 콜백 함수 또는 매개변수화된 함수 역할을 하는 데 사용할 수 있는 익명 함수로, 코드 단순화, 중복성 감소, 유연성 향상 등의 장점이 있습니다.
C++ 함수의 람다 식 사용 시나리오
람다 식은 함수 본문 내에서 정의하고 사용할 수 있는 익명 함수입니다. 일반 함수와 달리 람다 식에는 이름이 없으며 정의된 범위 내에서만 사용할 수 있습니다.
사용 시나리오:
#include <iostream> #include <vector> int main() { std::vector<int> numbers = {1, 2, 3, 4, 5}; // 使用 lambda 表达式增加每个元素 std::for_each(numbers.begin(), numbers.end(), [](int& n) { n++; }); // 打印增加后的列表 for (int num : numbers) { std::cout << num << " "; } return 0; }
#include <iostream> #include <vector> #include <algorithm> int main() { std::vector<int> numbers = {1, 5, 2, 4, 3}; // 使用 lambda 表达式对列表排序 std::sort(numbers.begin(), numbers.end(), [](int a, int b) { return a < b; }); // 打印排序后的列表 for (int num : numbers) { std::cout << num << " "; } return 0; }
#include <iostream> #include <vector> void for_each(std::vector<int>& numbers, std::function<void(int&)> operation) { for (int& num : numbers) { operation(num); } } int main() { std::vector<int> numbers = {1, 2, 3, 4, 5}; // 使用 lambda 表达式参数化 for_each 函数 for_each(numbers, [](int& n) { n *= n; }); // 打印平方后的列表 for (int num : numbers) { std::cout << num << " "; } return 0; }
장점:
위 내용은 C++ 함수에서 람다 표현식의 사용 시나리오는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!