匿名メソッドが Var に代入できない理由
次のような匿名メソッドが発生した場合、
delegate(string value) { return value != "0"; }
コンパイラは課題に直面しています。
Funccomparer = delegate(string value) { return value != "0"; };
のような型付きラムダ式とは異なり、匿名メソッドはデリゲートの型を明示的に指定しません。コンパイラは、メソッドのシグネチャに基づいてその型を推測する必要があります。ただし、これらの条件を満たすデリゲート型は、さまざまなパラメーターと戻り値で無限に存在します。
匿名メソッドの型の推論には、次のようないくつかの問題があります。
そのため、コンパイラ エラー「暗黙的に型指定されたローカル変数に匿名メソッドを割り当てることはできません」により、匿名メソッドで var を使用できなくなります。
以上がC# で匿名メソッドを `var` 変数に代入できないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。