繁体   English   中英

我怎样才能解构C#7中超出参数的值元组?

[英]How can I Deconstruct Value Tuples that are out parameters in C# 7?

鉴于以下内容:

var dic = new Dictionary<string, (int, int)>()
{
    ["A"] = (1, 2)
};

dic.TryGetValue("A", out (int, int) value);

我可以轻松地从字典中获取value ,但是我如何解构它以获得每个单独的值,如下所示:

dic.TryGetValue("A", out var (left, right));

dic.TryGetValue("A", out var (left, right));

此语法尚不支持,将来可能会添加。 参考


您可以像这样给出元组元素名称。

if(dic.TryGetValue("A", out (int left, int right) t))
{
    var (left, right) = (t.left, t.right);

    // use (left, right) or directly use (t.left, t.right)
}

我想不出更短的语法,只是时间问题。 c#7比以前发展得更快,所以你只需要等待。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM