我正忙着在这里学习C#,C#Collections是值类型还是引用类型?,因为Arrays是一个引用类型,我知道Strings也是引用类型。
谢谢。
答案 0 :(得分:5)
你可以创建一个值类型集合(所以struct MyCollection<T> : IEnumerable<T>
),但它几乎没用(因为你可以把它设为只读,它会很简单,或者你可以试着让它变成可变的,但要使它“值 - 类型”可复制是非常困难的,因此集合的副本是与原始的不同的实体)(并注意它仍然几乎无用,因为如果你使用值类型通过一个如果它的接口,你通常打包它)。所以最后,不: - )
我记得的所有.NET“库存”集合都是引用类型。所以数组List<>
,ArrayList
,Dictionary<,>
,...