C の Lambda 式は、パラメータとして他の関数に渡すことができます。構文は auto lambda_function = [](parameter_list) -> return_type { ... } です。たとえば、for_each 関数は引数として、指定された操作 (ベクトル要素をコンソールに出力するなど) を実行するベクトルとラムダ式を受け取ります。
C 関数ラムダ式はパラメータとして渡されます
ラムダ式は、パラメータとして渡すことができる小さな匿名関数です他の機能に。これは、1 行または 2 行のコードをパラメータとして渡す必要がある場合に便利です。
構文
auto lambda_function = [](parameter_list) -> return_type { // lambda 函数体 };
例
次に、ラムダ式をパラメータとして受け取る C 関数の例を示します。
#include <iostream> #include <vector> using namespace std; void for_each(const vector<int>& v, function<void(int)> f) { for (int i : v) { f(i); } } int main() { vector<int> v = {1, 2, 3, 4, 5}; // lambda 表达式作为 for_each 函数的参数 for_each(v, [](int i) {cout << i << endl; }); return 0; }
出力
1 2 3 4 5
この例では、for_each
関数はベクトルとラムダ式をパラメーターとして受け取ります。ラムダ式は、各ベクトル要素 (この場合は出力要素) に対して指定された操作を実行するコールバック関数として使用されます。
以上がC++ 関数のラムダ式がパラメータとして渡されましたの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。