Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Definiert eine Blockzuweisung, die Speicherblöcke einheitlicher Größe zuweist und freigibt.
Syntax
template <std::size_t Sz, class Max>
class cache_freelist
Parameter
Sz
Die Anzahl der zuzuweisenden Elemente im Array
Max.
Die max-Klasse, die die maximale Größe der Freiliste angibt. Dies kann max_fixed_size, max_none, max_unbounded oder max_variable_size sein.
Hinweise
Die cache_freelist Klassenvorlage verwaltet eine kostenlose Liste der Speicherblöcke der Größe Sz. Wenn die kostenlose Liste voll ist, verwendet sie die Operatorlöschung , um Speicherblöcke zu behandeln. Wenn die kostenlose Liste leer ist, wird der Operator neu verwendet, um neue Speicherblöcke zuzuweisen. Die maximale Größe der kostenlosen Liste wird durch die klasse max klasse bestimmt, die im Parameter Max übergeben wird.
Jeder Speicherblock enthält Sz Bytes des verwendbaren Speichers, und die Daten, die der Operator löschen muss, sind erforderlich.
Konstruktoren
| Konstruktor | Beschreibung |
|---|---|
| cache_freelist | Konstruiert ein Objekt vom Typ cache_freelist. |
Memberfunktionen
| Memberfunktion | Beschreibung |
|---|---|
| zuteilen | Belegt einen Speicherblock. |
| freigeben | Gibt eine angegebene Anzahl von Objekten im Speicher frei, beginnend an einer angegebenen Position. |
Anforderungen
Kopfball:<Allocators>
Namespace: stdext
cache_freelist::zuweisung
Belegt einen Speicherblock.
void *allocate(std::size_t count);
Parameter
anzahl
Die Anzahl der zuzuweisenden Elemente im Array
Rückgabewert
Zeiger auf das zugewiesene Objekt.
cache_freelist::cache_freelist
Konstruiert ein Objekt vom Typ cache_freelist.
cache_freelist();
cache_freelist::d eallocate
Gibt eine angegebene Anzahl von Objekten im Speicher frei, beginnend an einer angegebenen Position.
void deallocate(void* ptr, std::size_t count);
Parameter
ptr
Ein Zeiger auf das erste Objekt, dessen Zuweisung zum Speicher aufgehoben werden soll.
anzahl
Die Anzahl von Objekten, deren Zuweisung zum Speicherplatz aufgehoben werden soll.