假设我们有以下(理论)代码
Func<object, dynamic, bool> f1 = (o, d) => o is Person p && p.Name == d && p.Age == 11;
Func<object, dynamic, bool> f2 = (o, d) => o is Person p && p.Age == 11 && p.Name == d;
在第一行我得到&#34;使用未分配的局部变量p&#34;。突出显示的p位于p.Age == 11
。第二个不会产生任何错误。
我读到dynamic
在模式匹配方面存在一些限制,但在这种情况下这不应该是相关的,因为唯一的区别是订单。
我错过了什么吗?