std::allocator_traits<Alloc>:: construct
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Definido en el encabezado
<memory>
|
||
|
template
<
class
T,
class
...
Args
>
static void construct ( Alloc & a, T * p, Args && ... args ) ; |
(desde C++11)
(constexpr desde C++20) |
|
Si es posible, construye un objeto de tipo
T
en el almacenamiento no inicializado asignado apuntado por
p
, llamando a
a.
construct
(
p,
std::
forward
<
Args
>
(
args
)
...
)
.
Si lo anterior no es posible (por ejemplo,
Alloc
no tiene la función miembro
construct()
), entonces llama
|
:: new ( static_cast < void * > ( p ) ) T ( std:: forward < Args > ( args ) ... ) |
(hasta C++20) |
|
std:: construct_at ( p, std:: forward < Args > ( args ) ... ) |
(desde C++20) |
Contenidos |
Parámetros
| a | - | asignador a utilizar para la construcción |
| p | - |
puntero al almacenamiento no inicializado sobre el cual se construirá un objeto
T
|
| args... | - | los argumentos del constructor a pasar a a. construct ( ) o a placement-new (hasta C++20) std::construct_at() (desde C++20) |
Valor de retorno
(ninguno)
Notas
Esta función es utilizada por los contenedores de la biblioteca estándar al insertar, copiar o mover elementos.
Debido a que esta función proporciona la alternativa automática a placement new, la función miembro
construct()
es un requisito opcional del
Allocator
desde C++11.
Véase también
|
funciones de asignación
(función) |
|
|
(until C++20)
|
construye un objeto en almacenamiento asignado
(función miembro pública de
std::allocator<T>
)
|
|
(C++20)
|
crea un objeto en una dirección dada
(plantilla de función) |