std::allocator_traits<Alloc>:: allocate
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Défini dans l'en-tête
<memory>
|
||
|
static
pointer allocate
(
Alloc
&
a, size_type n
)
;
|
(1) |
(depuis C++11)
(constexpr depuis C++20) |
|
static
pointer allocate
(
Alloc
&
a, size_type n, const_void_pointer hint
)
;
|
(2) |
(depuis C++11)
(constexpr depuis C++20) |
Utilise l'allocateur a pour allouer n * sizeof ( Alloc :: value_type ) octets de stockage non initialisé. Un tableau de type Alloc :: value_type [ n ] est créé dans le stockage, mais aucun de ses éléments n'est construit.
allocate
), appelle
a.
allocate
(
n
)
.
Table des matières |
Paramètres
| a | - | allocateur à utiliser |
| n | - | nombre d'objets pour lesquels allouer de la mémoire |
| hint | - | pointeur vers un emplacement mémoire proche |
Valeur de retour
Le pointeur retourné par l'appel à a. allocate ( n ) .
Notes
Alloc::allocate
n'était pas requis pour créer un objet tableau jusqu'à
P0593R6
, qui a rendu l'utilisation d'un allocateur non par défaut pour
std::vector
et certains autres conteneurs non bien définie selon une lecture stricte de la spécification du langage de base.
Après l'appel à
allocate
et avant la construction des éléments, l'arithmétique des pointeurs de
Alloc
::
value_type
*
est bien définie au sein du tableau alloué, mais le comportement est indéfini si les éléments sont accédés.
Exemple
|
Cette section est incomplète
Raison : aucun exemple |
Voir aussi
|
alloue de la mémoire non initialisée
(fonction membre publique de
std::allocator<T>
)
|