allocator::allocate
Alloue un bloc de mémoire suffisamment grand pour signaler au moins un certain nombre spécifié d'éléments.
pointer allocate(
size_type _Count,
const void* _Hint
);
Paramètres
_Count
Le nombre d'éléments pour lesquels la mémoire suffisante doit être allouée._Hint
Un pointeur const qui peuvent aider l'objet d'allocation satisfont la demande de la mémoire en recherche l'adresse d'un objet alloué avant la demande.
Valeur de retour
Pointeur vers l'objet alloué à ou null si la mémoire n'a pas été allouée.
Notes
La fonction membre alloue de la mémoire pour un tableau d'éléments du nombre de type Type, par l'opérateur appelant nouveau (_Count).Elle retourne un pointeur vers l'objet alloué.L'argument d'indicateur aide les allocateurs en améliorant la localité de référence ; un choix valide est l'adresse d'un objet précédemment allouée par le même objet d'allocation et pas toujours libéré.Pour ne fournir aucun indicateur, utilisez un argument de pointeur null plutôt.
Exemple
// allocator_allocate.cpp
// compile with: /EHsc
#include <memory>
#include <iostream>
#include <vector>
using namespace std;
int main( )
{
allocator<int> v1Alloc;
allocator<int>::pointer v1aPtr;
v1aPtr = v1Alloc.allocate ( 10 );
int i;
for ( i = 0 ; i < 10 ; i++ )
{
v1aPtr[ i ] = i;
}
for ( i = 0 ; i < 10 ; i++ )
{
cout << v1aPtr[ i ] << " ";
}
cout << endl;
v1Alloc.deallocate( v1aPtr, 10 );
}
Configuration requise
en-tête : <memory>
l'espace de noms : DST