Namespaces
Variants

std::pmr::polymorphic_allocator<T>:: allocate_object

From cppreference.net
Memory management library
( exposition only* )
Allocators
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)
template < class U >
U * allocate_object ( std:: size_t n = 1 ) ;
(desde C++20)

Asigna almacenamiento para n objetos de tipo U utilizando el recurso de memoria subyacente.

Si std:: numeric_limits < std:: size_t > :: max ( ) / sizeof ( U ) < n , lanza std::bad_array_new_length , de lo contrario equivalente a return static_cast < U * > ( allocate_bytes ( n * sizeof ( U ) , alignof ( U ) ) ) ; .

Contenidos

Parámetros

n - el número de objetos para los cuales asignar almacenamiento

Valor de retorno

Un puntero al almacenamiento asignado.

Notas

Esta función se introdujo para su uso con el asignador completamente especializado std:: pmr :: polymorphic_allocator <> , pero puede ser útil en cualquier especialización como un atajo para evitar tener que reenlazar desde std:: pmr :: polymorphic_allocator < T > a std:: pmr :: polymorphic_allocator < U > .

Dado que U no se deduce, debe proporcionarse como argumento de plantilla al llamar a esta función.

Excepciones

Lanza std::bad_array_new_length si n > std:: numeric_limits < std:: size_t > :: max ( ) / sizeof ( U ) ; también puede lanzar cualquier excepción generada por la llamada a resource ( ) - > allocate .

Véase también

asigna memoria alineada sin procesar del recurso subyacente
(función miembro pública)
(C++20)
asigna y construye un objeto
(función miembro pública)
asigna memoria
(función miembro pública)
[static]
asigna almacenamiento sin inicializar usando el asignador
(función miembro estática pública de std::allocator_traits<Alloc> )
asigna memoria
(función miembro pública de std::pmr::memory_resource )