我正在编写一个 IEnumerator<T>
类来迭代一个 COM 集合,我是 wrappering 。我注意到 IEnumerator<T>
扩展了 IDisposable
,所以我需要实现 Dispose
方法。
但是,我想不出我会放什么,因为我只有对集合的引用(我不希望在 foreach
的末尾处理),以及索引的 int
。 Dispose
方法留空正常吗?
最佳答案
是的。IEnumerator<T>
实现 IDisposable
以防您制作需要处理的枚举器。由于大多数枚举器不需要处理,因此该方法通常为空。
顺便说一句,您可以通过 creating an iterator 更轻松地实现您的 IEnumerator
。
关于.net - IEnumerator:有一个空的 Dispose 方法是否正常?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3061612/