Namespaces
Variants

std::uses_allocator<std::tuple>

From ru.cppreference.net
 
 
Библиотека утилит
Поддержка языка
Поддержка типов (базовые типы, RTTI)
Макросы тестирования возможностей библиотеки (C++20)
Утилиты программы
Функции с переменным числом аргументов
Поддержка корутин (C++20)
Поддержка контрактов (C++26)
Трёхстороннее сравнение
(C++20)
(C++20)(C++20)(C++20)    
(C++20)(C++20)(C++20)

Общие утилиты
Операторы отношений (устарело в C++20)
Функции сравнения целых чисел
(C++20)(C++20)(C++20)    
(C++20)
Операции swap и
ranges::swap
exchange
declval
to_underlying
forward
forward_like
move_if_noexcept
as_const
(C++17)
tuple_size
tuple_element
apply
make_from_tuple
expected



 
 
Определено в заголовке <tuple>
template< class... Types, class Alloc >
struct uses_allocator< std::tuple<Types...>, Alloc > : std::true_type { };
(начиная с C++11)

Данная специализация std::uses_allocator сообщает другим компонентам библиотеки, что кортежи поддерживают конструирование с использованием распределителя, даже если они не имеют вложенного allocator_type.

Наследуется от std:: integral_constant

Константы-члены

value
[static]
true
(публичная статическая константа-член)

Функции-члены

operator bool
преобразует объект в bool , возвращает value
(публичная функция-член)
operator()
(C++14)
возвращает value
(публичная функция-член)

Типы-члены

Тип Определение
value_type bool
type std:: integral_constant < bool , value >

Пример

// myalloc - это stateful аллокатор с однoаргументным конструктором
// принимающим int. Не имеет конструктора по умолчанию.
    using innervector_t = std::vector<int, myalloc<int>>;
    using elem_t = std::tuple<int, innervector_t>;
    using Alloc = std::scoped_allocator_adaptor< myalloc<elem_t>, myalloc<int>>;
    Alloc a(1,2);
    std::vector<elem_t, Alloc> v(a);
    v.resize(1);                  // использует аллокатор #1 для элементов v
    std::get<1>(v[0]).resize(10); // использует аллокатор #2 для innervector_t

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

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