Операция | Назначение |
v.begin() | Возвращает итератор произвольного доступа, установленный на первый элемент |
v.end() | Возвращает итератор произвольного доступа, установленный на позицию, следующую за последним элементом |
v.cbegin() | Возвращает константный итератор произвольного доступа, устано-вленный на первый элемент (стандарт С++11) |
v.cend() | Возвращает константный итератор произвольного доступа, устано-вленный на позицию, следующую за последним элементом (стандарт С++11) |
v.rbegin() | Возвращает обратный итератор, установленный на первый элемент при обратном обходе |
v.rend() | Возвращает обратный итератор на позицию, следующую за последним элементом при обратном обходе |
v.crbegin() | Возвращает константный обратный итератор, установленный на первый элемент при обратном обходе (стандарт С++ 11) |
v.crend() | Возвращает константный обратный итератор, установленный на первый элемент при обратном обходе (стандарт С++11) |
Разработчиками STL приняты соглашения, согласно которым при указании диапазона начальный итератор показывает на первый элемент диапазона, а конечный – на элемент, следующий за последним элементом диапазона (запредельное значение). В связи с этим оригинально решена проблема продвижения по контейнеру в обратном направлении: реверсивный итератор начала диапазона указывает на последний элемент вектора, а реверсивный итератор конца диапазона – на фиктивный элемент, стоящий перед начальным элементом вектора.
|
|
Таблица 25.7