람다 표현식의 매개변수 목록 구문은 다음과 같습니다. [capture-list](매개변수) -> return-type { body }, 여기서: 캡처 목록은 외부 변수를 캡처합니다. 매개변수는 매개변수 목록입니다. 반환 유형은 반환 유형입니다. 본문은 함수 본문입니다.
C++ 람다 표현식의 매개변수 목록 공식화
람다 표현식은 외부 변수를 캡처하여 스택에 저장할 수 있는 C++의 간결하고 강력한 인라인 함수입니다. 람다 표현식의 매개변수 목록 구문은 다음과 같습니다.
[capture-list](parameters) -> return-type { body }
capture-list는 캡처할 외부 변수를 지정하며 다음 값을 가질 수 있습니다.
[=]
: 모두 캡처 외부 변수[=]
: 捕获所有外部变量[&]
: 捕获所有外部变量,并作为引用传递[parameter1, parameter2, ...]
: 捕获指定的外部变量[parameter1, parameter2, ..., ¶meter3, ¶meter4, ...]
: 既捕获指定的变量,又以引用形式捕获其他变量parameters 指定 lambda 表达式的参数列表,语法与普通函数的参数列表相同。
return-type 指定 lambda 表达式的返回类型,可以是任何有效的 C++ 数据类型。
body 是 lambda 表达式的函数体,包含要执行的代码。
实战案例
考虑一个需要对整数列表进行排序的函数。我们可以使用 lambda 表达式定义一个比较函数:
auto compare = [](int a, int b) { return a > b; };
在这个例子中,lambda 表达式捕获了外部变量 a
和 b
。
我们也可以使用 lambda 表达式来创建匿名函数并立即执行:
auto print_name = [](string name) { cout << "Hello, " << name << endl; }; print_name("John Doe");
这个 lambda 表达式捕获了外部变量 name
,并将其作为参数传递给了 cout
[&]
: 모든 외부 변수를 캡처하고 참조로 전달
[parameter1, parameter2, ...]
: 캡처 지정된 외부 변수[parameter1, parameter2, ..., ¶meter3, ¶meter4, ...]
: 지정된 변수와 기타 변수를 모두 참조 형식으로 캡처
a
및 b
를 캡처합니다. 🎜🎜람다 식을 사용하여 익명 함수를 만들고 즉시 실행할 수도 있습니다. 🎜rrreee🎜이 람다 식은 외부 변수 name
을 캡처하여 cout
에 매개 변수로 전달합니다. 기능. 🎜🎜사용자 지정 캡처 목록과 매개 변수 목록을 통해 람다 식은 C++에서 간결하고 유연하며 재사용 가능한 코드를 작성하기 위한 강력한 도구를 제공합니다. 🎜위 내용은 C++ 람다 표현식의 매개변수 목록을 공식화하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!