Allocators

Zuweisungen werden von der Standardvorlagenbibliothek verwendet, um die Belegung und Freigabe von Elementspeichern in den Containern zu behandeln. Alle STL-Container haben ein Vorlagenargument des Typs allocator<Type>, wobei Type den Typ des Containerelements darstellt. Beispielsweise wird die Vektorklasse deklariert, wie folgt:

template <
    class Type,
    class Allocator = allocator<Type>
>
class vector

Die Standard Template Library stellt eine Standardimplementierung für eine Zuweisung zur Verfügung. In den meisten Fällen sollte diese Standardzuweisung ausreichend. Weitere Informationen über die Standardzuweisung, finden Sie unter allocator-Klasse.

Schreiben eigener Zuweisung

Die Standard-Zuweisungsverwendung new und delete, Arbeitsspeicher reserviert und freizugeben. Wenn Sie eine andere Methode der Speicherbelegung, wie die Verwendung von freigegebenen Speicherbereichen, dann Sie verwenden möchten, muss eine eigene Zuordnung erstellen.

Jede beliebige Zuweisung, die in STL-Containern verwendet wird, muss die folgenden Typen implementieren:

const_pointer

rebind

const_reference

reference

difference_type

size_type

pointer

value_type

Darüber hinaus muss jede beliebige Zuweisung, die in STL-Containern verwendet wird, die folgenden Methoden implementieren:

Konstruktor

deallocate

Kopier-Konstruktor

destroy

Destruktor

max_size

address

operator==

allocate

operator!=

construct

Weitere Informationen über diese Typdefinitionen und Methoden, finden Sie unter allocator-Klasse.

Siehe auch

Referenz

Standardvorlagenbibliothek