allocator::allocate

分配足够大内存块存储元素的至少某个指定数目。

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

参数

  • _Count
    足够的存储将分配元素的数目。

  • _Hint
    可以帮助分配器对象的常量指针将位于该请求之前分配的对象的地址满足需要存储。

返回值

对分配的对象或空指针,如果未分配内存。

备注

成员函数通过调用运算符分配数组存储类型 ***** 类型 *****的计数元素,新的(_Count)。它返回指向已分配对象。提示参数帮助提高站点的某些分配器引用;有效的选择是对象的地址早期绑定分配由同一分配器对象和不被释放。若要提供提示,请不要使用null指针参数。

示例

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

要求

标头: <memory>

命名空间: std

请参见

参考

allocator Class