Udostępnij za pośrednictwem


Allocators

Allocators są używane przez standardowe biblioteki szablonów do obsługi alokacji i dezalokacji elementów składowych w pojemnikach.Wszystkie pojemniki STL mają argument szablonu typu allocator<Type>, gdzie Type reprezentuje typ kontenera.Na przykład klasa vector jest zadeklarowany w następujący sposób:

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

Standardowa biblioteka szablonu przewiduje domyślna Implementacja programu przydzielania.W większości przypadków to alokatora domyślne powinny być wystarczające.Więcej informacji dotyczących programu przydzielania domyślnej, zobacz allocator Class.

Pisanie własnych alokatora

Używa domyślnej program przydzielania new i delete do przydzielania i dezalokuj pamięć.Jeśli chcesz użyć innej metody alokacji pamięci, takich jak użycie pamięci współużytkowanej należy utworzyć własny program przydzielania.

Każdy program przydzielania używane z kontenerami STL musi implementować następujące definicje typów:

const_pointer

rebind

const_reference

reference

difference_type

size_type

pointer

value_type

Ponadto każdy program przydzielania używane z kontenerami STL musi implementować następujące metody:

Konstruktor

deallocate

Konstruktor kopiujący

destroy

Destruktor

max_size

address

operator==

allocate

operator!=

construct

Aby uzyskać więcej informacji na te definicje typów i metod, zobacz allocator Class.

Zobacz też

Informacje

Standardowa biblioteka szablonu