allocator::allocate
Przydziela bloku pamięci wystarczająco duża, aby przechowywać co najmniej niektóre określoną liczbę elementów.
pointer allocate(
size_type _Count,
const void* _Hint
);
Parametry
_Count
Liczba elementów, dla których ma być przydzielona wystarczającą ilość miejsca._Hint
Const wskaźnik, który może wspomagać obiektu programu przydzielania spełnić żądania do składowania, lokalizując adresu obiektu przydzielone przed wystąpieniem z wnioskiem.
Wartość zwracana
Wskaźnik do przydzielonego obiektu lub wartość null, jeśli nie została alokowana pamięć.
Uwagi
Element członkowski funkcja przydziela zasoby dla tablicy liczba elementów typu typu, przez wywołującego nowy operator (_Count).Zwraca wskaźnik do przydzielonego obiektu.Argument wskazówka pomaga niektóre selektory w poprawie miejscowości odniesienia; prawidłowy wybór jest adres obiektu wcześniej przydzielone przez tego samego obiektu programu przydzielania i jeszcze nie cofniętych przydziałów.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: <pamięć>
Przestrzeń nazw: std