Udostępnij za pośrednictwem


allocator::allocate

Alokuje blok pamięci wystarczająco duży, aby przechowywać co najmniej określoną liczbę elementów.

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

Parametry

  • _Count
    Liczba elementów, dla których ma być przeznaczona wystarczającą ilość miejsca.

  • _Hint
    Const wskaźnik, który może pomóc obiektu programu przydzielania spełnić żądania dla magazynu poprzez lokalizowanie adresu obiektu przyznane przed żądaniem.

Wartość zwracana

Wskaźnik do przydzielonego obiektu lub null, jeśli nie przydzielono pamięci.

Uwagi

Funkcja Członkowskie przydziela magazynu dla tablicy typu Liczba elementów typu, nowy podmiot wywołującego (_Count).Zwraca wskaźnik do przydzielonego obiektu.Argument Wskazówka pomaga niektóre allocators w poprawianiu miejscowości odniesienia; prawidłowy wybór jest adres wcześniej przydzielone przez tego samego obiektu przydzielania i jeszcze nie dealokowane obiektu.Aby podane nie wskazówki, należy użyć argumentu wskaźnik zerowy.

Przykład

// 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 );
}
  

Wymagania

Nagłówek: <memory>

Obszar nazw: std

Zobacz też

Informacje

allocator Class