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

std::pmr::polymorphic_allocator<T>::polymorphic_allocator

Материал из cppreference.com
 
 
Динамическое управление памятью
no section name
Ограниченные алгоритмы неинициализированной памяти
no section name
Поддержка сбора мусора
(C++11)(до C++23)
(C++11)(до C++23)
(C++11)(до C++23)
(C++11)(до C++23)
(C++11)(до C++23)
(C++11)(до C++23)



no section name
 
 
<tbody> </tbody>
polymorphic_allocator() noexcept;
(1)
polymorphic_allocator( const polymorphic_allocator& other ) = default;
(2)
template< class U > polymorphic_allocator( const polymorphic_allocator<U>& other ) noexcept;
(3)
polymorphic_allocator( std::pmr::memory_resource* r );
(4)

Создаёт новый polymorphic_allocator.

1) Создаёт polymorphic_allocator, используя возвращаемое значение std::pmr::get_default_resource() в качестве базового ресурса памяти.
2,3) Создаёт polymorphic_allocator, используя other.resource() в качестве базового ресурса памяти.
4) Создаёт polymorphic_allocator, используя r в качестве базового ресурса памяти. Этот конструктор обеспечивает неявное преобразование из std::pmr::memory_resource*.

Параметры

other другой polymorphic_allocator для копирования
r указатель на используемый ресурс памяти. Не может быть нулевым

Исключения

4) Ничего не генерирует.

Примечание

Копирование контейнера с помощью polymorphic_allocator не вызовет конструктор копирования аллокатора. Вместо этого новый контейнер будет использовать возвращаемое значение select_on_container_copy_construction (созданный по умолчанию polymorphic_allocator) в качестве своего аллокатора.

Смотрите также

создаёт новый polymorphic_allocator для использования конструктором копирования контейнера
(public функция-элемент) [править]