我在 Delphi 2009 中有一个自定义的 TObjectList 后代,我想稍微玩一下它的枚举器并向 MoveNext 方法添加一些过滤功能,以使其跳过某些对象。MoveNext 由 DoMoveNext 调用,它是一个虚拟方法,所以这应该不难重写……除了一件事。TObjectList 的 TEnumerator 不是它自己的类;它在 TObjectList 声明中声明为嵌套类型。
有什么简单的方法可以在我的后代类中覆盖 TEnumerator.DoMoveNext,还是我必须重新实现整个 TEnumerator?这不是一个很大的课程,但如果可以的话,我宁愿将冗余保持在最低限度......