std::deque<T,Allocator>::insert
De cppreference.com
<tbody>
</tbody>
<tbody class="t-dcl-rev t-dcl-rev-num ">
</tbody><tbody>
</tbody>
<tbody class="t-dcl-rev t-dcl-rev-num ">
</tbody><tbody>
</tbody>
<tbody class="t-dcl-rev t-dcl-rev-num ">
</tbody><tbody>
</tbody>
| (1) | ||
iterator insert( iterator pos, const T& value ); |
(hasta C++11) | |
iterator insert( const_iterator pos, const T& value ); |
(desde C++11) | |
iterator insert( const_iterator pos, T&& value ); |
(2) | (desde C++11) |
| (3) | ||
void insert( iterator pos, size_type count, const T& value ); |
(hasta C++11) | |
iterator insert( const_iterator pos, size_type count, const T& value ); |
(desde C++11) | |
| (4) | ||
template< class InputIt > void insert( iterator pos, InputIt first, InputIt last ); |
(hasta C++11) | |
template< class InputIt > iterator insert( const_iterator pos, InputIt first, InputIt last ); |
(desde C++11) | |
iterator insert( const_iterator pos, std::initializer_list<T> ilist ); |
(5) | (desde C++11) |
Inserta elementos en el contenedor en la ubicación especificada.
1-2) Inserta el valor
value antes de la posición pos.3) Inserta
count copias del valor value antes de la posición pos.4) Inserta elementos del rango
El comportamiento no está definido si
[first, last) antes de la posición pos.
|
Esta sobrecarga tiene el mismo efecto que la sobrecarga (3) si |
(hasta C++11) |
|
Esta sobrecarga solo participa en la resolución de sobrecargas si |
(desde C++11) |
first y last son iteradores en *this. 5) Inserta elements de la lista de inicializadores
ilist antes de la posición pos.Se invalidan todos los iteradores, incluyendo el iterador después del final. También se invalidan las referencias, a menos que pos == begin() o pos == end(), en cuyo caso no se invalidan.
Parámetros
| pos | - | Iterador antes del cual se insertará el contenido. La posición pos puede ser el iterador end().
|
| value | - | Valor del elemento a insertar. |
| first, last | - | El rango de los elementos a insertar, no pueden ser iteradores en el contenedor para el que se llama la función de inserción. |
| ilist | - | Lita de inicializadores de la cual insertar los valores. |
| Requisitos de tipo | ||
-T debe satisfacer los requisitos de CopyAssignable y CopyInsertable para poder usar la sobrecarga (1).
| ||
-T debe satisfacer los requisitos de MoveAssignable y MoveInsertable para poder usar la sobrecarga (2).
| ||
-T debe satisfacer los requisitos de CopyAssignable y CopyInsertable para poder usar la sobrecarga (3).
| ||
-T debe satisfacer los requisitos de EmplaceConstructible para poder usar la sobrecarga (4,5).
| ||
-T debe satisfacer los requisitos de Swappable, MoveAssignable, MoveConstructible y MoveInsertable para poder usar la sobrecarga (4,5). (desde C++17)
| ||
Valor de retorno
1-2) Iterador que apunta al valor
value insertado3) Iterador que apunta al primer elemento insertado, o a la posición
pos si count==0.4) Iterador que apunta al primer elemento insertado, o a la posición
pos si first==last.5) Iterador que apunta al primer elemento insertado, o a la posición
pos si ilist está vacía.Complejidad
1-2) Constante más lineal en la distancia menor entre la posición
pos y cualquiera de los extremos del contenedor.3) Lineal en
count más lineal en la distancia menor entre la posición pos y cualquiera de los extremos del contenedor.4) Lineal en
std::distance(first, last) más lineal en la distancia menor entre la posición pos y cualquiera de los extremos del contenedor.5) Lineal en
ilist.size() más lineal en la distancia menor entre la posición pos y cualquiera de los extremos del contenedor.Excepciones
Si se lanza una excepción al insertar un solo elemento en cualquiera de los extremos, esta función no tiene efecto (garantía de excepción fuerte).
Véase también
(C++11) |
Construye el elemento en el sitio. (función miembro pública) |
| Inserta un elemento al principio del contenedor. (función miembro pública) | |
| Agrega elementos al final. (función miembro pública) |