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

std::allocator

Материал из cppreference.com
< cpp‎ | memory
 
 
Динамическое управление памятью
Низкоуровневое управление памятью
Аллокаторы
allocator
allocator_traits(C++11)
allocator_arg_t(C++11)
allocator_arg(C++11)
uses_allocator(C++11)
scoped_allocator_adaptor(C++11)
Неинициализированные хранилища
uninitialized_copy
uninitialized_copy_n(C++11)
uninitialized_fill
uninitialized_fill_n
raw_storage_iterator
get_temporary_buffer
return_temporary_buffer
Умные указатели
unique_ptr(C++11)
shared_ptr(C++11)
weak_ptr(C++11)
auto_ptr(устарело)
owner_less(C++11)
enable_shared_from_this(C++11)
bad_weak_ptr(C++11)
default_delete(C++11)
Поддержка сборки мусора
declare_reachable(C++11)
undeclare_reachable(C++11)
declare_no_pointers(C++11)
undeclare_no_pointers(C++11)
pointer_safety(C++11)
get_pointer_safety(C++11)
Разное
pointer_traits(C++11)
addressof(C++11)
align(C++11)
Библиотека C
 
 
Определено в заголовочном файле <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 функция-член) [править]

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

предоставляет информацию о распределитель типа
Оригинал:
provides information about allocator types
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

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

(шаблон класса) [править]
проверяет, является ли указанный тип поддерживает использование-распределитель строительства
Оригинал:
checks if the specified type supports uses-allocator construction
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(шаблон класса) [править]