ラムダ式
学習目標: Cm言語のラムダ式(無名関数)の使い方を学びます。
所要時間: 15分
難易度: 🟡 中級
概要
ラムダ式は関数をその場で定義できる構文です。
基本構文
// 基本形
// 例
使用例
変数への代入
// 関数ポインタに代入
func<int, int> double_it = (int x) => { return x * 2; };
高階関数への渡し
// map でラムダ式を使用
// [2, 4, 6, 8, 10]
// filter でラムダ式を使用
// [2, 4]
型推論
引数の型は推論されることがあります:
// 型推論により x は int
複数引数
func<int, int, int> add = (int a, int b) => { return a + b; };
戻り値なし
func<int, void> print_it = (int x) => {
println("Value: {}", x);
};
print_it(42); // "Value: 42"
よくある使用パターン
コールバック
void process_async(func<int, void> callback) {
callback(result);
}
process_async((int x) => {
println("Got: {}", x);
});
ソートのカスタム比較
}
Person[] people = [...];
// 年齢でソート
people.sort((Person a, Person b) => {
return a.age - b.age;
});
次のステップ
最終更新: 2026-02-08