Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
umm_3690.pdf
Скачиваний:
24
Добавлен:
30.04.2015
Размер:
364.53 Кб
Скачать

size_type erase (const key_type & x);

void erase (iterator first, iterator last);

void clear( );

Первая форма функции insert используется для вставки в словарь пары «ключ-значение». Функция возвращает пару, состоящую из итератора, указывающего на вставленное значение, и булевого признака результата такой операции: true, если записи с таким ключом не было(только в этом случае происходит добавление) и false в противном случае(итератор указывает на соответствующую запись).

!!! Скорректировать существующую запись с помощью функции вставки нельзя. Это делается с помощью операции по индексу.

Вторая форма функции вставки применяется для ускорения процесса вставки. С этой целью ей передается первым параметром позиция словаря, начиная с которой требуется осуществлять поиск места вставки.

Третья форма функции вставки используется для вставки группы элементов, определяемой диапазоном итераторов.

Для обмена всех элементов двух словарей применяется функция swap: template <class Key, class T, class Compare>

void swap (map <Key, T, Compare > & x, map <Key, T, Compare> & y);

Функция equal_range возвращает пару итераторов(lower_bound (x), upper_bound (x)) для переданного ей значения x:

pair <iterator, iterator> equal_range (const key_type & x);

pair <const iterator, const iterator> equal_range (const key_type & x) const;

После вызова оба итератора будут указывать на элемент с заданным ключом, если он присутствует в словаре, или на первый элемент, больший него в противном случае.

Словари с дубликатами (multimap)

Словари с дубликатами допускают хранение элементов с одинаковыми ключами. Поэтому для них не определена операция доступа по индексу[ ], а добавление с помощью функцииinsert выполняется успешно в любом случае. Функция возвращает итератор на вставленный элемент.

Элементы с одинаковыми ключами хранятся в словаре в порядке их занесения. При удалении элемента по ключу функцияerase возвращает количество удаленных элементов.

Функция equal_range возвращает диапазон итераторов, определяющий все вхождения элемента с заданным ключом.

Функция count может вернуть значение, большее 1.

70

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]