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