【发布时间】:2009-10-03 13:24:10
【问题描述】:
假设我有一个实现IEnumerable<T> 的类。它目前在GetEnumerator() 方法中使用yield 关键字。但是现在我需要做更多的事情,例如我想自己清理一下。为此,除非我忽略了什么,否则我需要实现IEnumerator<T> 接口。但是你说我应该在哪里做呢?
类本身是否应该实现它并且GetEnumerator()返回this?还是将其隐藏在私人课程中会更好?还是应该只是一个完全不同的班级?对此有哪些常见做法?
【问题讨论】:
标签: c# ienumerable ienumerator