std::pmr::polymorphic_allocator<T>:: allocate_object
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
|
(
C++20/26*
)
|
||||
|
polymorphic_allocator::allocate_object
(C++20)
|
||||
| Non-member functions | ||||
|
(until C++20)
|
|
template
<
class
U
>
U * allocate_object ( std:: size_t n = 1 ) ; |
(depuis C++20) | |
Alloue de l'espace mémoire pour
n
objets de type
U
en utilisant la ressource mémoire sous-jacente.
Si std:: numeric_limits < std:: size_t > :: max ( ) / sizeof ( U ) < n , lève std::bad_array_new_length , sinon équivalent à return static_cast < U * > ( allocate_bytes ( n * sizeof ( U ) , alignof ( U ) ) ) ; .
Table des matières |
Paramètres
| n | - | le nombre d'objets pour lesquels allouer de la mémoire |
Valeur de retour
Un pointeur vers le stockage alloué.
Notes
Cette fonction a été introduite pour être utilisée avec l'allocateur pleinement spécialisé std:: pmr :: polymorphic_allocator <> , mais elle peut être utile dans toute spécialisation comme raccourci pour éviter d'avoir à effectuer un rebind depuis std:: pmr :: polymorphic_allocator < T > vers std:: pmr :: polymorphic_allocator < U > .
Puisque
U
n'est pas déduit, il doit être fourni comme argument de modèle lors de l'appel de cette fonction.
Exceptions
Lance std::bad_array_new_length si n > std:: numeric_limits < std:: size_t > :: max ( ) / sizeof ( U ) ; peut également lever toutes les exceptions générées par l'appel à resource ( ) - > allocate .
Voir aussi
|
(C++20)
|
alloue de la mémoire brute alignée à partir de la ressource sous-jacente
(fonction membre publique) |
|
(C++20)
|
alloue et construit un objet
(fonction membre publique) |
|
alloue de la mémoire
(fonction membre publique) |
|
|
[static]
|
alloue un stockage non initialisé en utilisant l'allocateur
(fonction membre publique statique de
std::allocator_traits<Alloc>
)
|
|
alloue de la mémoire
(fonction membre publique de
std::pmr::memory_resource
)
|