【发布时间】:2009-05-10 17:39:01
【问题描述】:
我在一个接受 IEnumerable 的集合中有一个构造函数。我想枚举并使用这些项目创建一个新集合,但不引用相同的项目。 Items 可以是 value 和 ref 类型:
CustomCollection cc = new CustomCollection (IEnumerable<T> items)
{
foreach (var item in items)
{
this.Add(item); // justs adds the reference for ref types.
}
}
编辑:.NET 集合具有相同的方法,并且不进行深度复制。为什么您想要一个引用与原始元素相同的元素的集合?
【问题讨论】: