在some api dode中找到了这个。 VS 2015没有接受将两个枚举作为关键,我以前从未见过这样的声明。我认为它已经为谁写了它,所以我应该学习什么??
private readonly ConcurrentDictionary<(Pair c, ChannelType o), ClientWebSocket> _wsClients;
Pair和ChannelType是枚举。
答案 0 :(得分:2)
这是C#7.0中引入的值元组的语法糖。在这种情况下,它将两个值组合成一个值。阅读有关价值元组in this introduction的更多信息。
它可以在字典的键中使用的原因是该值是相等的,如果元组中的每个值与另一个值匹配,它将被认为是相同的。
有关值元组与基于类的元组的更多信息,请参阅What's the difference between System.ValueTuple and System.Tuple?