デリゲート キーワードとラムダ表記法
C# では、2 つのラムダ式の等価性に関して一般的な疑問が生じます。
<code class="csharp">delegate { x = 0; } () = > { x = 0 }</code>
それらは機能的に同一であるかどうかコンパイルされましたか?
答え:
要するに、いいえ。これらは構文的には同等ですが、結果のデリゲートの型が異なります。
Delving Deeper:
delegate キーワードは伝統的に匿名のデリゲートを作成しますが、delegate キーワードを指定してラムダを使用すると、匿名の代表者も。ただし、ラムダを Expression 型に割り当てると、代わりに式ツリーが作成され、後で匿名デリゲートにコンパイルできます。
高度な考慮事項:
これらの表記法の選択は、次によって異なります。使用目的:
以上がC# ではデリゲート キーワードとラムダ表記は機能的に同一ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。