有没有人知道答案和/或对此有意见?
由于元组通常不会很大,因此我认为使用结构比使用类更有意义。你怎么说?
发布于 2010-04-27 03:28:19
对于二元组,您仍然可以始终使用早期版本的通用类型系统中的KeyValuePair。它是一种值类型。
对Matt Ellis的文章稍作澄清的是,当不可变性生效时,引用类型和值类型之间的使用语义差异只是“微小的”(当然,这里就是这种情况)。尽管如此,我认为在BCL设计中最好不要引入让Tuple在某个阈值上交叉到引用类型的混乱。
发布于 2010-05-07 00:33:00
我不知道,但是如果你用过F#,元组是语言的一部分。如果我创建了一个.dll并返回了一个元组类型,那么有一个类型来放入它就好了。我猜想现在F#已经是语言(.Net 4)的一部分了,为了适应F#中的一些常见结构,对CLR进行了一些修改
来自http://en.wikibooks.org/wiki/F_Sharp_Programming/Tuples_and_Records
let scalarMultiply (s : float) (a, b, c) = (a * s, b * s, c * s);;
val scalarMultiply : float -> float * float * float -> float * float * float
scalarMultiply 5.0 (6.0, 10.0, 20.0);;
val it : float * float * float = (30.0, 50.0, 100.0)
https://stackoverflow.com/questions/2410710
复制相似问题