std::list<T,Allocator>:: assign
|
void
assign
(
size_type count,
const
T
&
value
)
;
|
(1) | (constexpr desde C++26) |
|
template
<
class
InputIt
>
void assign ( InputIt first, InputIt last ) ; |
(2) | (constexpr desde C++26) |
|
void
assign
(
std::
initializer_list
<
T
>
ilist
)
;
|
(3) |
(desde C++11)
(constexpr desde C++26) |
Reemplaza el contenido del contenedor.
[
first
,
last
)
.
|
Esta sobrecarga tiene el mismo efecto que la sobrecarga
(1)
si
|
(until C++11) |
|
Esta sobrecarga participa en la resolución de sobrecarga solo si
|
(since C++11) |
Todos los iteradores, punteros y referencias a los elementos del contenedor quedan invalidados.
Contenidos |
Parámetros
| count | - | el nuevo tamaño del contenedor |
| value | - | el valor para inicializar los elementos del contenedor |
| first, last | - | el par de iteradores que define el rango fuente de elementos a copiar |
| ilist | - | std::initializer_list desde el cual copiar los valores |
Complejidad
Ejemplo
El siguiente código utiliza
assign
para agregar varios caracteres a una
std::
list
<
char
>
:
#include <list> #include <iostream> #include <string> int main() { std::list<char> characters; auto print_list = [&]() { for (char c : characters) std::cout << c << ' '; std::cout << '\n'; }; characters.assign(5, 'a'); print_list(); const std::string extra(6, 'b'); characters.assign(extra.begin(), extra.end()); print_list(); characters.assign({'C', '+', '+', '1', '1'}); print_list(); }
Salida:
a a a a a b b b b b b C + + 1 1
Informes de defectos
Los siguientes informes de defectos que modifican el comportamiento se aplicaron retroactivamente a los estándares publicados anteriormente de C++.
| DR | Aplicado a | Comportamiento publicado | Comportamiento correcto |
|---|---|---|---|
| LWG 320 | C++98 |
la operación de reemplazo debía implementarse como
eliminar todos los elementos existentes seguido de insertar los elementos dados |
eliminó el
requisito |
Véase también
|
(C++23)
|
asigna un rango de valores al contenedor
(función miembro pública) |
|
asigna valores al contenedor
(función miembro pública) |