在下面的類中,我成功實現了IEnumerable(T)以遍歷T.在同一個類中,我能夠實現IEnumerable(DLLItem(T ))遍歷DLLItem(T)。兩者都在獨立工作。這可能是一個基本問題。我該怎麼做才能讓迭代器在同一個類中一起工作? 我試過幾種可能性越來越始終編譯器錯誤...在泛型類中實現多個迭代器 - C# - IEnumerable(T)
用的IEnumerable(T)
public class DLL<T> : IEnumerable<T>
{
...
IEnumerator IEnumerable.GetEnumerator()
{
return GetEnumerator();
}
public IEnumerator<T> GetEnumerator()
{
...
yield return ...
...
}
...
}
用的IEnumerable(DLLItem(T))
public class DLL<T> : IEnumerable<DLLItem<T>>
{
...
IEnumerator IEnumerable.GetEnumerator()
{
return GetEnumerator();
}
public IEnumerator<DLLItem<T>> GetEnumerator()
{
...
yield return ...
...
}
...
}
在前進,謝謝您的支持...
按照@dasblinkenlight建議的解決方案(請參閱低)
你能表現出使用場景對於這樣的安排? – dasblinkenlight
[是否可以在C#中使用多個迭代器?]](http://stackoverflow.com/questions/1754041/is-multiple-iterators-is-possible-in-c) – lightbricko