Freigeben über


allocator::allocate

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

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

Parameter

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

  • _Hint
    const Ein Zeiger, der möglicherweise dem Zuweisungsobjekt hilft, stellen die Anforderung für Speicher Inhalte, indem er die Adresse eines Objekts gesucht, 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 wird 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 mehrere Zuweisungen, wenn lokale Verweise verbessert; eine gültige Auswahl ist die Adresse eines durch das gleiche Zuweisungsobjekt zuvor zugeordneten und noch nicht freigegebenen Objekts. Um keinen Hinweis zu stellen, 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-Klasse