Пространства имён
Варианты
Действия

std::set::insert

Материал из cppreference.com
< cpp‎ | container‎ | set

 
 
 
std::set
Функции-элементы
Итераторы
Ёмкость
Модификаторы
set::insert
(C++17)
Просмотр
Наблюдатели
Функции, не являющиеся элементами
(C++20)
(до C++20)(до C++20)(до C++20)(до C++20)(до C++20)(C++20)
Принципы вывода (C++17)
 
std::pair<iterator,bool> insert( const value_type& value );
(1)
std::pair<iterator, bool> insert( value_type&& 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)
iterator insert( const_iterator hint, value_type&& 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.

5)
вставками элементов из диапазона [first, last).
Оригинал:
inserts elements from range [first, last).
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
6)
вставками элементов из списка инициализации 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 функция-элемент) [править]
создаёт элементы на месте, используя подсказку
(public функция-элемент) [править]