end
Материал из cppreference.com
Синтаксис:
#include <list> iterator end(); const_iterator end() const;
Функция end() возвращает итератор на место после последнего элемента списка.
Обратите внимание, что перед тем, как получить доступ к последнему элементу через вызов end(), нужно сначала декрементировать итератор.
Следующий пример показывает, как begin() и end() используются для прохода по всем элементам списка:
list<int> l1( 5, 789 ); list<int>::iterator it; for( it = l1.begin(); it != l1.end(); it++ ) { cout << *it << endl; }
Итератор инициализируется с помощью вызова begin(). После выполнения тела цикла итератор инкрементируется и проверяется на неравенство результату вызова end(). Так как end() возвращает итератор, указывающий на место после последнего элемента списка, цикл остановится только после того, как будут пройдены все элементы списка.
end() выполнятеся за константное время.