std::map::insert
Материал из cppreference.com
![]() | Эта страница была переведена автоматически с английской версии вики используя Переводчик Google. Перевод может содержать ошибки и странные формулировки. Наведите курсор на текст, чтобы увидеть оригинал. Щёлкните здесь, чтобы увидеть английскую версию этой страницы. (Вы можете помочь в исправлении ошибок и улучшении перевода. Для инструкций перейдите по ссылке.) |
std::pair<iterator,bool> insert(const value_type& value ); | (1) | |
template<class P> std::pair<iterator,bool> insert( P&& value ); | (2) | (начиная с C++11) |
iterator insert( iterator hint, const value_type& value ); iterator insert( const_iterator hint, const value_type& value ); | (3) | (до C++11) (начиная с C++11) |
template<class P> iterator insert( const_iterator hint, P&& value ); | (4) | (начиная с C++11) |
template<class InputIt > void insert( InputIt first, InputIt last ); | (5) | |
void insert(std::initializer_list<value_type> ilist ); | (6) | (начиная с C++11) |
Inserts element(s) to the container, if the container doesn't already contain an element with equivalent key.
1-2)вставками
value
. Оригинал:
inserts
value
. Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
3-4) inserts value
in the position as close as possible, just prior(начиная с C++11), to hint
.
вставками элементов из диапазона
6) [first, last)
.Оригинал:
inserts elements from range
[first, last)
.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
вставками элементов из списка инициализации
ilist
.Оригинал:
inserts elements from initializer list
ilist
.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Итераторы и указатели остаются в рабочем состоянии.
Содержание |
[править]Параметры
hint | — | итератор, используемый как предположение о том, куда вставить элементы |
value | — | вставляемое значение |
first, last | — | диапазон элементов, которые нужно вставить |
ilist | — | список инициализаторов, который нужно вставить |
Требования к типам | ||
-InputIt должен соответствовать требованиям InputIterator . |
[править]Возвращаемое значение
1-2) пару из итератора на вставленный элемент (или на тот, который помешал вставке), и bool, указывающий, была ли вставка.
3-4) итератор на вставленный элемент, или на тот, который помешал вставке.
5-6) ничего.
[править]Сложность
1-2) Логарифмическая по размеру контейнера,
O(log(size()))
.3-4) Амортизированная константа, если вставка происходит в позицию прямо после хинта. Иначе — логарифмическая по размеру контейнера. | (до C++11) |
3-4) Амортизированная константа, если вставка происходит в позицию прямо перед хинтом. Иначе — логарифмическая по размеру контейнера. | (начиная с C++11) |
5-6)
O(N*log(size() + N))
, где N — сколько элементов вставить.[править]См. также
(C++11) | создаёт элемент на месте (public функция-элемент) |
(C++11) | создаёт элементы на месте, используя подсказку (public функция-элемент) |