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

但是,我想不出我会放什么,因为我只有对集合的引用(我不希望在 foreach 的末尾处理),以及索引的 intDispose方法留空正常吗?

最佳答案

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

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

关于.net - IEnumerator:有一个空的 Dispose 方法是否正常?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3061612/

10-13 06:11