◐ Shell
clean mode source ↗

std::allocator_arg — cppreference.com

Материал из cppreference.com

<tbody> </tbody> <tbody class="t-dcl-rev "> </tbody><tbody> </tbody>

Определено в заголовочном файле <memory>

struct allocator_arg_t { explicit allocator_arg_t() = default; };

(начиная с C++11)

constexpr std::allocator_arg_t allocator_arg = std::allocator_arg_t();

(начиная с C++11)
(до C++17)

inline constexpr std::allocator_arg_t allocator_arg = std::allocator_arg_t();

(начиная с C++17)

std::allocator_arg_t это пустой тип класса, используемый для устранения неоднозначности перегрузок конструкторов и функций-элементов объектов, поддерживающих аллокаторы, включая std::tuple, std::function, std::packaged_task, (до C++17) и std::promise. std::allocator_arg является его константой.

Отчёты о дефектах

Следующие изменения поведения были применены с обратной силой к ранее опубликованным стандартам C++:

Номер Применён Поведение в стандарте Корректное поведение
LWG 2510 C++11 конструктор по умолчанию был неявным, что могло привести к двусмысленности сделан явным

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

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