Namespaces
Variants

std:: uninitialized_construct_using_allocator

From cppreference.net
Memory management library
( exposition only* )
Allocators
uninitialized_construct_using_allocator
(C++20)
Uninitialized memory algorithms
Constrained uninitialized memory algorithms
Memory resources
Uninitialized storage (until C++20)
( until C++20* )
( until C++20* )
( until C++20* )

Garbage collector support (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
(C++11) (until C++23)
Definido en el encabezado <memory>
template < class T, class Alloc, class ... Args >

constexpr T * uninitialized_construct_using_allocator ( T * p,
const Alloc & alloc,

Args && ... args ) ;
(desde C++20)

Crea un objeto del tipo dado T mediante construcción uses-allocator en la ubicación de memoria no inicializada indicada por p .

Equivalente a

return std::apply(
    [&]<class... Xs>(Xs&&...xs)
    {
        return std::construct_at(p, std::forward<Xs>(xs)...);
    },
    std::uses_allocator_construction_args<T>(alloc, std::forward<Args>(args)...));

Contenidos

Parámetros

p - la ubicación de memoria donde se colocará el objeto
alloc - el asignador que se utilizará
args - los argumentos que se pasarán al constructor de T

Valor de retorno

Puntero al objeto recién creado de tipo T .

Excepciones

Puede lanzar cualquier excepción lanzada por el constructor de T , típicamente incluyendo std::bad_alloc .

Ejemplo

Véase también

verifica si el tipo especificado admite la construcción uses-allocator
(plantilla de clase)
crea un objeto del tipo dado mediante construcción uses-allocator
(plantilla de función)