C ラムダ式を使用して並べ替えルールをカスタマイズし、並べ替えロジックを柔軟に定義します。構文は次のとおりです: [キャプチャ リスト](パラメータ) -> 戻り値の型 { body }。実際の場合、ラムダ式 sortLambda は文字列の長さで並べ替えられ、出力は犬、リンゴ、バナナ、チェリー、象になります。
C ラムダ式を使用して並べ替えルールをカスタマイズする
ラムダ式は、C でカスタムを定義するために使用できる匿名関数です。並べ替えルール。カスタム ロジックに基づいてデータを並べ替える簡単かつ柔軟な方法を提供します。
構文
一般的なラムダ式の構文は次のとおりです:
[capture list](parameters) -> return type { body }
その例:
キャプチャ リスト
: オプション。外部変数への参照をキャプチャするために使用されます。 parameters
: オプション。入力パラメータを取得するために使用されます。 -> 戻り値の型
: 戻り値の型を指定するために使用されるオプション。 body
: 実行されるコードを含む関数本体。 #実践的なケース
次に、ラムダ式を使用して並べ替えルールをカスタマイズする実践的なケースを示します。これは、文字列ベクトルを長さによって並べ替えるのに使用されます。 ###include <iostream> #include <vector> #include <algorithm> using namespace std; int main() { vector<string> strings = {"apple", "banana", "cherry", "dog", "elephant"}; // 定义 lambda 表达式,将字符串按长度排序 auto sortLambda = [](const string& a, const string& b) { return a.length() < b.length(); }; // 使用 lambda 表达式对向量排序 sort(strings.begin(), strings.end(), sortLambda); // 打印排序后的向量 for (const string& s : strings) { cout << s << endl; } return 0; }出力
dog
apple
banana
cherry
elephant
この例では、ラムダ式
が外部変数 a
と ## をキャプチャします。 #b を返し、
a の長さが
b の長さより小さいかどうかを返します。ソート関数
sort は、このラムダ式を使用して、文字列のベクトルを長さの昇順に並べ替えます。
以上がC++ ラムダ式を使用してカスタム並べ替えルールを実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。