我有以下代码:
public static (int a, int b) f12()
{
return (1, 2);
}
public static void test()
{
int a;
(a, int b) = f12(); //here is the error
}
Run Code Online (Sandbox Code Playgroud)
当我尝试编译它时,出现错误:
解构操作不能在左侧混合声明和表达式
我不明白为什么。有什么建议么?
当我尝试编译它时,出现错误:
解构不能在左边混合声明和表达式,我不明白为什么。
正如埃里克(Eric)所说,获得“为什么”问题答案的最佳地点是设计师。方便地,C#设计的会议记录实际上是公开发布的。因此,我们实际上可以回答这些问题!
引用会议记录,这是您不能混合使用声明和表达式的原因:
[支持混合的声明和表达式]是我们没有实现的后期设计更改。
到目前为止,正在考虑将此功能添加到C#7.X的将来版本中。
相关链接:
归档时间: |
|
查看次数: |
377 次 |
最近记录: |