РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
274 of 815 menu

Метод end

Метод end класса map возвращает итератор, который указывает на позицию, следующую за последним элементом контейнера. Этот итератор часто используется в циклах для обхода всех элементов карты, а также для проверки того, достигнут ли конец контейнера при поиске. Важно понимать, что разыменование итератора, возвращаемого методом end, приводит к неопределенному поведению, так как он не указывает на реальный элемент. Метод не принимает параметров.

Синтаксис

iterator end(); const_iterator end() const;

Пример

Давайте создадим карту и используем метод end для вывода всех её элементов в цикле:

#include <iostream> #include <map> using namespace std; int main() { map<int, string> mp = {{1, "a"}, {2, "b"}, {3, "c"}}; for (auto it = mp.begin(); it != mp.end(); ++it) { cout << it->first << " " << it->second << endl; } return 0; }

Результат выполнения кода:

"1 "a"" "2 "b"" "3 "c""

Пример

Давайте проверим, что метод find возвращает end, если элемент не найден:

#include <iostream> #include <map> using namespace std; int main() { map<int, string> mp = {{1, "a"}, {2, "b"}, {3, "c"}}; auto it = mp.find(4); if (it == mp.end()) { cout << "Element not found" << endl; } return 0; }

Результат выполнения кода:

"Element not found"

Смотрите также

  • метод begin,
    который возвращает итератор на первый элемент
  • метод find,
    который ищет элемент по ключу
  • метод erase,
    который удаляет элементы из карты
  • класс map,
    который представляет собой контейнер для хранения пар ключ-значение
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить