get_temporary_buffer

Ordnet temporäre Speicherung für eine Sequenz von Elementen an, die keine angegebene Anzahl Elemente überschreitet.

template<class Type>
   pair<Type *, ptrdiff_t>
      get_temporary_buffer(
         ptrdiff_t _Count
      );

Parameter

  • _Count
    Die maximale Anzahl von Elementen angefordert, für welchen Arbeitsspeicher zugeordnet werden soll.

Rückgabewert

pair, dessen erste Komponente ein Zeiger auf den Arbeitsspeicher darstellt, die zugeordnet wurden und die zweite Komponente die Größe des Puffers gibt, die größte Anzahl von Elementen anzugeben, die es speichern kann.

Hinweise

Die Funktion stellt eine Anforderung für Arbeitsspeicher und sie folgt möglicherweise nicht.Wenn kein Puffer zugeordnet wird, gibt die Funktion ein Paar, mit der zweiten Komponente gleich null und der ersten Komponente gleich dem NULL-Zeiger zurück.

Diese Funktion sollte für den Speicher nur verwendet werden, der temporär ist.

Beispiel

// memory_get_temp_buf.cpp
// compile with: /EHsc
#include <memory>
#include <iostream>

using namespace std;

int main( )
{
   // Create an array of ints
   int intArray [ ] = { 10, 20, 30, 40, 100, 200, 300, 1000, 2000 };
   int count = sizeof ( intArray ) / sizeof ( int );
   cout << "The number of integers in the array is: " 
      << count << "." << endl;

   pair<int *, ptrdiff_t> resultPair;
   resultPair = get_temporary_buffer<int>( count );

   cout << "The number of elements that the allocated memory\n"
        << "could store is given by: resultPair.second = " 
        << resultPair.second << "." << endl;
}
  
  

Anforderungen

Header: <memory>

Namespace: std