IEnumerator:有一个空的Dispose方法是正常的吗?

时间:2010-06-17 12:35:53

标签: .net idisposable ienumerator

我正在写一个IEnumerator<T>类来迭代COM集合,我wrappering。我注意到IEnumerator<T>扩展了IDisposable,所以我需要实现Dispose方法。

然而,我想不出我会放在那里的任何东西,因为我只有一个对该集合的引用(我不希望在foreach的末尾处置),以及{ {1}}索引。将int方法留空是否正常?

1 个答案:

答案 0 :(得分:18)

是的,是的。

IEnumerator<T>实现IDisposable,以防您制作需要处理的枚举数。由于大多数枚举器不需要处理,因此该方法通常是空的。

顺便说一句,您可以通过creating an iterator更轻松地实施IEnumerator