Lambda 式のパラメータ リストの構文は次のとおりです: [capture-list](parameters) -> return-type { body }、ここで: Capture-list は外部変数をキャプチャします。パラメータはパラメータのリストです。 return-type は戻り値の型です。 body は関数本体です。
C ラムダ式のパラメータ リストの定式化
ラムダ式は C の簡潔で強力なインライン関数であり、外部変数は次のとおりです。キャプチャされ、スタックに保存されます。ラムダ式のパラメータ リスト構文は次のとおりです。
[capture-list](parameters) -> return-type { body }
capture-list キャプチャする外部変数を指定します。次の値を指定できます。
[ =]
: すべての外部変数をキャプチャします[&]
: すべての外部変数をキャプチャし、参照として渡します [parameter1、parameter2、..]
: 指定された外部変数をキャプチャします。[parameter1、parameter2、...、¶meter3、¶meter4、...]
: 両方をキャプチャします。指定された変数と参照フォームは他の変数をキャプチャします。parameters ラムダ式のパラメータ リストを指定します。構文は通常の関数のパラメータ リストと同じです。
return-type ラムダ式の戻り型を指定します。有効な C データ型であればどれでも構いません。
body はラムダ式の関数本体であり、実行されるコードが含まれます。
実践的なケース
整数のリストを並べ替える必要がある関数を考えてみましょう。ラムダ式を使用して比較関数を定義できます。
auto compare = [](int a, int b) { return a > b; };
この例では、ラムダ式は外部変数 a
と b
をキャプチャします。
ラムダ式を使用して匿名関数を作成し、すぐに実行することもできます。
auto print_name = [](string name) { cout << "Hello, " << name << endl; }; print_name("John Doe");
このラムダ式は、外部変数 name
をキャプチャし、パラメータとして渡します。 ##cout 関数が与えられています。
以上がC++ラムダ式のパラメータリストをどのように定式化するか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。