Пространства имён
Варианты
Действия

std::allocator

Материал из cppreference.com
< cpp‎ | memory
 
 
 
 
Defined in header <memory>
template< class T >
struct allocator;
(1)
template<>
struct allocator<void>;
(2)

Шаблон класса std::allocator по умолчанию Allocator используется всеми стандартными контейнерами библиотеки, если не обеспечивается указанный пользователем распределитель. По умолчанию распределитель является обёрткой, то есть, все экземпляры данного распределителя являются взаимозаменяемыми, сравнительно равными и могут освободить память, выделенную любым другим экземпляром того же типа распределителя.

В специализации для void отсутствуют повторные объявления имени (typedef) для: reference, const_reference, size_type и difference_type. Также эта специализация не объявляет функций-членов.

Все пользовательские распределители памяти должны быть обёртками (то есть не хранить состояния) (до C++11)
Пользовательские распределители памяти могут содержать состояния. Каждый контейнер или объект, использующий размещение в памяти, содержит экземпляр распределителя памяти и контролирует размещение распределителя через std::allocator_traits. (начиная с C++11)

Содержание

[править] Типы-члены

Тип Определение
value_type T
pointer T*
const_pointer const T*
reference T&
const_reference const T&
size_type std::size_t
difference_type std::ptrdiff_t
rebind template< class U > struct rebind { typedef allocator<U> other; };

[править] Функции-члены

создает новый экземпляр распределителя
Оригинал:
creates a new allocator instance
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(public функция-член) [править]
разрушает распределитель экземпляр
Оригинал:
destructs an allocator instance
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(public функция-член) [править]
получает адрес объекта, даже если operator& перегружен
Оригинал:
obtains the address of an object, even if operator& is overloaded
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(public функция-член) [править]
выделяет неинициализированные хранения
Оригинал:
allocates uninitialized storage
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(public функция-член) [править]
освобождает хранения
Оригинал:
deallocates storage
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(public функция-член) [править]
возвращает наибольшее поддерживаемый размер ассигнований
Оригинал:
returns the largest supported allocation size
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(public функция-член) [править]
создает объект выделено в хранении
Оригинал:
constructs an object in allocated storage
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(public функция-член) [править]
разрушает объект выделено хранения
Оригинал:
destructs an object in allocated storage
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(public функция-член) [править]

[править] Функции, не являющиеся членами

Сравнивает два экземпляра распределителя
Оригинал:
compares two allocator instances
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(public функция-член) [править]

[править] См. также

извлекает информацию об аллокаторе
(шаблон класса) [править]
реализует многоуровневую распределитель для многоуровневых контейнеров
Оригинал:
implements multi-level allocator for multi-level containers
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(шаблон класса) [править]
проверяет, поддерживает ли указанный тип использование аллокаторов
(шаблон класса) [править]