为什么匿名方法不能赋值给var
提供的代码中,匿名方法赋值给var变量无法通过编译由于推断委托类型的模糊性。
可以将匿名方法分配给委托类型,例如 Func
此外,即使编译器可以推断出委托类型,这可能会导致不一致。例如,假设 var 赋值编译成功,则以下代码将不再有意义:
var comparer = delegate(string arg1, string arg2, string arg3, string arg4, string arg5) { return false; };
这是因为 Func
为了解决这种歧义,需要在将匿名方法分配给变量时显式指定委托类型。这确保了代码的清晰度和一致性。
以上是为什么不能将匿名方法直接赋值给 C# 中的 var ?的详细内容。更多信息请关注PHP中文网其他相关文章!