ホームページ  >  記事  >  バックエンド開発  >  C++ 関数のラムダ式がパラメータとして渡されました

C++ 関数のラムダ式がパラメータとして渡されました

WBOY
WBOYオリジナル
2024-04-20 09:42:011135ブラウズ

C の Lambda 式は、パラメータとして他の関数に渡すことができます。構文は auto lambda_function = [](parameter_list) -> return_type { ... } です。たとえば、for_each 関数は引数として、指定された操作 (ベクトル要素をコンソールに出力するなど) を実行するベクトルとラムダ式を受け取ります。

C++ 函数 Lambda 表达式作为参数传递

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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。