std::pmr::polymorphic_allocator<T>::allocate_object
template< class U > [[nodiscard]] 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 es equivalente a return static_cast<U*>(allocate_bytes(n * sizeof(U), alignof(U)) );
Contenido |
[editar] Parámetros
n | - | El número de objetos para los que asignar almacenamiento. |
[editar] Valor de retorno
Un puntero al almacenamiento asignado.
[editar] Notas
Esta función se introdujo para su uso con el asignador totalmente especializado std::pmr::polymorphic_allocator<>, pero puede ser útil en cualquier especialización como un atajo para evitar tener que volver a revincular de 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.
[editar] Excepciones
Lanza std::bad_array_new_length si n > std::numeric_limits<std::size_t>::max() / sizeof(U); también puede haber excepciones lanzadas por la llamada a resource()->allocate.
[editar] Véase también
(C++20) |
Asigna memoria sin formato alineada del recurso subyacente. (función miembro pública) |
(C++20) |
Asigna memoria y construye un objeto. (función miembro pública) |
Asigna memoria. (función miembro pública) | |
[estático] |
asigna almacenamiento sin inicializar utilizando el asignador Original: allocates uninitialized storage using the allocator The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (función miembro estática pública de std::allocator_traits )
|
Asigna memoria. (función miembro pública de std::pmr::memory_resource )
|