◐ Shell
clean mode source ↗

std::uninitialized_construct_using_allocator - cppreference.com

De cppreference.com

Definido en el archivo de 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 la construcción con uso de asignador 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)...));

Parámetros

p - La ubicación de memoria donde se colocará el objeto.
alloc - El asignador de memoria a usar.
args - Los argumentos a pasar 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, que normalmente incluye std::bad_alloc.

Ejemplo

Véase también