Namespaces
Variants

std::allocator<T>::construct

De es.cppreference.net
 
 
Biblioteca de gestión de memoria
Asignadores
Recursos de memoria
Almacenamiento no inicializado (hasta C++20*)
Soporte de recolector de basura (hasta C++23)
 
 
Definido en el encabezado <memory>
void construct( pointer p, const_reference val );
(1) (hasta C++11)
template< class U, class... Args >
void construct( U* p, Args&&... args );
(2) (desde C++11)
(obsoleto en C++17)
(eliminado en C++20)

Construye un objeto de tipo T en el almacenamiento no inicializado asignado señalado por p, usando global placement-new.

1) Llama a ::new((void*)p) T(val).
2) Llama a ::new((void*)p) U(std::forward<Args>(args)...).

Parámetros

p - puntero a almacenamiento no inicializado asignado
val - el valor a utilizar como argumento del constructor de copia
args... - los argumentos del constructor a utilizar

Informes de defectos

Los siguientes informes de defectos que modifican el comportamiento se aplicaron retroactivamente a los estándares de C++ publicados anteriormente.

DR Aplicado a Comportamiento publicado Comportamiento correcto
LWG 402 C++98 si T :: operator new existe, el programa podría estar mal formado utiliza el replacement-new global en su lugar

Véase también

[static]
construye un objeto en el almacenamiento asignado
(plantilla de función)
crea un objeto en una dirección dada
(plantilla de función)
funciones de asignación
(función)