end
Материал из cppreference.com
Синтаксис:
#include <set> iterator end(); const_iterator end() const;
Функция end() возвращает итератор на место после последнего элемента множества. Заметьте, что прежде чем обращаться к последнему элементу множества через итератор, полученный вызовом end(), нужно декрементировать этот итератор.
Например, в следующем коде end() используется для вывода элементов множества в обратном порядке:
// Создаем множество символов set<char> charSet; const char* s = "Hello There"; for( int i=0; i < strlen(s); i++ ) { charSet.insert( s[i] ); } // Выводим последний элемент множества set<char>::iterator theIterator = charSet.end(); for( theIterator = charSet.end(); theIterator != charSet.begin(); ) { theIterator--; cout << *theIterator; } // Вывод будет "rolheTH "