Freigeben über


allocator::allocate

Ordnet einen Speicherblock zu, der genug, um eine angegebene Anzahl an Elementen mindestens speichern zu groß ist.

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

Parameter

  • _Count
    Die Anzahl von Elementen, für die ausreichender Speicher zugewiesen werden soll.

  • _Hint
    Ein const Zeiger, der kann dem allocator-Objekt hilft, stellen die Anforderung für Speicher Inhalte, indem er die Adresse eines Objekts isoliert, das vor der Anforderung zugeordnet ist.

Rückgabewert

Ein Zeiger auf den zugeordneten Objekt bzw. die NULL, wenn Speicher nicht zugeordnet wurde.

Hinweise

Die Memberfunktion ordnet Speicher für ein Array Anzahlelemente des Typs Typ zu, durch den aufrufenden neuen Operator (_Count).Sie gibt einen Zeiger auf den zugeordneten Objekt zurück.Das Hinweisargument hilft einigen Belegungsfunktionen, wenn lokale Verweise verbessert; eine gültige Auswahl ist die Adresse eines durch das gleiche allocator-Objekt zuvor zugeordneten und noch nicht freigegebenen Objekts.Um keinen Hinweis anzugeben, verwenden Sie ein NULL-Zeiger-Argument stattdessen.

Beispiel

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

Anforderungen

Header: <memory>

Namespace: std

Siehe auch

Referenz

allocator Class