На этом шаге мы рассмотрим функции получения итераторов.
Обращение к произвольному элементу списка возможно только с применением итераторов. Списки поддерживают стандартные функции получения итераторов (таблица 1). Тем не менее из-за отсутствия произвольного доступа в списках эти итераторы являются всего лишь двунаправленными. Это означает, что вы не можете вызывать алгоритмы, для работы которых необходимы итераторы произвольного доступа. К этой категории относятся все алгоритмы, заметно изменяющие порядок следования элементов (особенно алгоритмы сортировки). Тем не менее для сортировки элементов в списках существует специальная функция sort(), которую мы рассмотрим позднее.
Операция | Описание |
---|---|
c.begin() | Возвращает двунаправленный итератор для первого элемента |
c.end() | Возвращает двунаправленный итератор для позиции за последним элементом |
c.rbegin() | Возвращает обратный итератор для первого элемента при переборе в обратном направлении |
c.rend() | Возвращает обратный итератор для позиции за последним элементом при переборе в обратном направлении |
На следующем шаге мы рассмотрим вставку и удаление элементов.