Partager via


allocator::allocate

Alloue un bloc de mémoire suffisamment grand pour stocker au moins un certain nombre spécifié d'éléments.

pointer allocate(
   size_type _Count, 
   const void* _Hint
);

Paramètres

  • _Count
    Nombre d'éléments pour lesquels le stockage suffisant doit être alloué.

  • _Hint
    Pointeur const qui peut aider l'objet d'allocation satisfont la demande de stockage en recherchant l'adresse d'un objet alloué avant la demande.

Valeur de retour

Pointeur vers l'objet alloué ou NULL si la mémoire n'est pas allouée.

Notes

La fonction membre alloue le stockage pour un tableau d'éléments de nombre de type Type, par l'opérateur appelant nouvel objet (_Count). Retourne un pointeur vers l'objet alloué. L'argument de l'indicateur permet des allocateurs en améliorant la localité de la 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 n'ont pas encore été débloqué. Pour ne fournit aucun indicateur, utilisez un argument de pointeur null à la place.

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: <mémoire>

Espace de noms : std

Voir aussi

Référence

allocator, classe