簡體   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