# Allocators
[Memory]

Collaboration diagram for Allocators:

## Classes

- class __gnu_cxx::__mt_alloc< _Tp, _Poolp >
    This is a fixed size (power of 2) allocator which - when compiled with thread support - will maintain one freelist per size per thread plus a "global" one. Steps are taken to limit the per thread freelist sizes (by returning excess back to the "global" list).

    Further details: http://gcc.gnu.org/onlinedocs/libstdc++/manual/bk01pt12ch32.html. More...

- class __gnu_cxx::__pool_alloc< _Tp >
    Allocator using a memory pool with a single lock. More...
- class __gnu_cxx::_ExtPtr_allocator< _Tp >
    An example allocator which uses a non-standard pointer type.

    This allocator specifies that containers use a 'relative pointer' as it's pointer type. (See ext/pointer.h) Memory allocation in this example is still performed using std::allocator. More...

- class __gnu_cxx::array_allocator< _Tp, _Array >
    An allocator that uses previously allocated memory. This memory can be externally, globally, or otherwise allocated. More...
- class __gnu_cxx::bitmap_allocator< _Tp >
    Bitmap Allocator, primary template. More...
- class __gnu_cxx::debug_allocator< _Alloc >
    A meta-allocator with debugging bits, as per [20.4].

    This is precisely the allocator defined in the C++ Standard.

    - all allocation calls operator new
    - all deallocation calls operator delete.
    More...
- class __gnu_cxx::malloc_allocator< _Tp >
    An allocator that uses malloc.

    This is precisely the allocator defined in the C++ Standard.

    - all allocation calls malloc
    - all deallocation calls free.
    More...
- class __gnu_cxx::new_allocator< _Tp >
    An allocator that uses global new, as per [20.4].

    This is precisely the allocator defined in the C++ Standard.

    - all allocation calls operator new
    - all deallocation calls operator delete.
    More...
- class __gnu_cxx::throw_allocator< T >
    Allocator class with logging and exception control. More...
- class std::allocator< _Tp >
    The "standard" allocator, as per [20.4].

    Further details: http://gcc.gnu.org/onlinedocs/libstdc++/manual/bk01pt04ch11.html. More...

## Detailed Description

Classes encapsulating memory operations.