std::pmr::polymorphic_allocator<T>::polymorphic_allocator
Материал из cppreference.com
<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 функция-элемент) |