get_temporary_buffer
Alloca provvisoriamente archiviate per una sequenza di elementi che non supera un numero specificato di elementi.
template<class Type>
pair<Type *, ptrdiff_t>
get_temporary_buffer(
ptrdiff_t _Count
);
Parametri
- _Count
Numero massimo di elementi necessaria per il quale la memoria deve essere allocata.
Valore restituito
pair di cui il primo componente è un puntatore alla memoria è stata allocata e della seconda componente fornisce la dimensione del buffer, per specificare il numero massimo di elementi che possono archiviare.
Note
La funzione esegue una richiesta di memoria e potrebbe non riuscire.Se nessun buffer allocato, la funzione restituisce una coppia, con la seconda parte uguale a zero e la prima parte uguale al puntatore NULL.
Questa funzione deve essere utilizzata solo per la memoria in temporanea.
Esempio
// 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;
}
Requisiti
intestazione: <memory>
Spazio dei nomi: deviazione standard