该类List<T>
实现IEnumerable<T>
接口。它有一个GetEnumerator
返回List<T>.Enumerator
.
我有一个如下的类,它给出了一个编译错误,说返回类型GetEnumerator
与接口不匹配。
public class InsertionSortedSet<T> : IEnumerable<T>
{
public struct Enumerator : IEnumerator<T>
{
// Required interface implemented
}
// Other interface methods implemented
public Enumerator GetEnumerator()
{
return new Enumerator(this);
}
}
“Entities.Helpers.InsertionSortedSet”没有实现接口成员“System.Collections.Generic.IEnumerable.GetEnumerator()”。“Entities.Helpers.InsertionSortedSet.GetEnumerator()”无法实现“System.Collections.Generic.IEnumerable.GetEnumerator()”,因为它没有匹配的返回类型“System.Collections.Generic.IEnumerator”。
鉴于这List<T>
似乎返回了它自己的Enumerator
类(不是接口),但它确实实现了Enumeration<T>
我很困惑的接口,因为我看不出我与那个类有什么不同。
我的设置有什么问题导致它失败,哪里List<T>
有效?
我想返回 aInsertionSortedSet<T>.Enumerator
而不是界面,因为它避免了我需要删除的拳击。