get_temporary_buffer
为不超过指定元素数量的元素序列分配临时存储。
template<class Type>
pair<Type *, ptrdiff_t>
get_temporary_buffer(
ptrdiff_t _Count
);
参数
- _Count
哪内存请求元素的最大位数将分配。
返回值
为第一个组件是指向内存分配,并且,第二个组件提供缓冲区的大小,元素指示的大可能存储的 pair。
备注
函数在对内存,并可能不成功。 如果缓冲区中分配,则该函数返回一对与组件,第二个等于零和第一组件等于 null 指针。
应是瞬态的内存只使用此函数。
示例
// 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;
}
要求
页眉: <内存>
命名空间: std