Aracılığıyla paylaş


allocator::allocate

Bazı en az belirtilen sayıda öğeleri saklamak için yeterli büyüklükte bir bellek ayırır.

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

Parametreler

  • _Count
    Yeterli depolama alanına tahsis edilecek olan öğelerin sayısı.

  • _Hint
    Ayırıcı nesnesini yardımcı olabilir const bir işaretçi adresi isteği önce ayrılan bir nesnenin bularak depolama isteği karşılamak.

Dönüş Değeri

Tahsis edilen nesne veya bellek tahsis yoksa null işaretçi.

Notlar

Üye işlevi türdeki öğeleri sayı dizisi için depolama ayırdığı türü, yeni arama operatörü tarafından (_Count). Tahsis edilen nesneye bir işaretçi döndürür. İpucu bağımsız Yerleşim yeri başvurusu iyileştirilmesi amacıyla bazı ayırıcılarına yardımcı olur; Geçerli seçim bir nesne daha önce aynı ayırıcısı nesnesi tarafından ayrılan ve henüz ayırmanın adresidir. Hiçbir ipucu sağlamanız gerekiyorsa, bunun yerine bir null işaretçi değişkeni kullanın.

Örnek

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

Gereksinimler

Başlık: <memory>

Namespace: std

Ayrıca bkz.

Başvuru

allocator Class