1. ホーム
  2. c#

[解決済み] デレゲート 述語 vs. アクション vs. 関数

2022-05-09 01:57:57

質問

どなたか、この3つの最も重要なデリゲートについて、良い説明(できれば例を挙げて)をしていただけませんか。

  • 述語
  • アクション
  • ファンク

解決方法は?

  • Predicate : 本来は Func<T, bool> 指定された引数がデリゲートで表される条件を満たしているかどうかを質問します。

  • Action : 引数を与えてアクションを実行する。非常に汎用的。基本的に副作用を意味するので、LINQではあまり使われない。

  • Func : 中古 広く LINQでは、通常、複雑な構造を1つのプロパティに投影するなどして、引数を変換するために使用します。

その他の重要なデリゲート

  • EventHandler / EventHandler<T> : WinFormsのあらゆるところで使われている

  • Comparison<T> : のように IComparer<T> が、デリゲート形式である。