Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bellek bloklarının listesini yönetir.
Sözdizimi
template <std::size_t Sz, class Max>
class freelist : public Max
Parametreler
Sz
Dizideki ayrılacak öğe sayısı.
Maksimum
Ücretsiz listede depolanacak en fazla öğe sayısını temsil eden maksimum sınıf. Maksimum sınıf max_none, max_unbounded, max_fixed_size veya max_variable_size olabilir.
Açıklamalar
Bu sınıf şablonu, Sz boyutundaki bellek bloklarının listesini yönetir ve maksimum sınıf tarafından belirlenen en fazla uzunluk Üst sınırda geçirilir.
Oluşturucular
| Oluşturucu | Açıklama |
|---|---|
| serbest liste | türünde freelistbir nesnesi oluşturur. |
Üye işlevleri
| Üye işlevi | Açıklama |
|---|---|
| Pop | Ücretsiz listeden ilk bellek bloğunu kaldırır. |
| gönderme | Listeye bir bellek bloğu ekler. |
Gereksinimler
Üst bilgi:<ayırıcılar>
Ad alanı: stdext
freelist::freelist
türünde freelistbir nesnesi oluşturur.
freelist();
freelist::p op
Ücretsiz listeden ilk bellek bloğunu kaldırır.
void *pop();
Dönüş Değeri
Listeden kaldırılan bellek bloğuna bir işaretçi döndürür.
Açıklamalar
Liste boşsa üye işlevi NULL döndürür. Aksi takdirde, listeden ilk bellek bloğunu kaldırır.
freelist::p ush
Listeye bir bellek bloğu ekler.
bool push(void* ptr);
Parametreler
ptr
Boş listeye eklenecek bellek bloğu işaretçisi.
Dönüş Değeri
true
full en yüksek sınıfın işlevi döndürürsefalse, aksi takdirde push işlevi döndürürfalse.
Açıklamalar
full Max sınıfının işlevi döndürürsefalse, bu üye işlevi ptr tarafından işaret edilen bellek bloğunu listenin başına ekler.