Я заметил, что многие итераторы или устройства чтения данных пересылаются только вперед, как DataReader , XmlReader , IEnumerator , еще много (вы получилиidea) .
Итак, просто спрашиваю, почему они только для пересылки , обычно, когда я создаю итератор данных для своих пользовательских нужд, я обычно пытаюсь добавить поддержку навигации с обеих сторон.Я согласен с тем, что большую часть времени нам не нужно проходить назад, но иногда нам это нужно, и поэтому мы в конечном итоге создаем temp
переменных или что-то для хранения данных, когда это необходимо.
Так что мои вопросыявляются:
Почему большинство итераторов данных только вперед
Я ошибаюсь в создании итератора с обратным прохождениемЧитатель данных.если нет, то почему у фреймворка нет такой поддержки для встроенных итераторов данных.
Есть ли у нас серьезный недостаток производительности или его просто не считается хорошим дизайном чтобы иметь такую функцию.
Этот вопрос с самого начала сильно меня раздражал, но так и не получил удовлетворительного ответа, поэтому я спрашиваю его здесь. Я верюмногие разработчики могут со мной согласиться, что обратный переход иногда может быть полезен.