std::allocator_arg_t

< cpp‎ | memory
定义于头文件 <memory>
struct allocator_arg_t { explicit allocator_arg_t() = default; };
(C++11 起)

std::allocator_arg_t 是用于消歧义具分配器对象,包括 std::tuple std::functionstd::packaged_task (C++17 前)std::promise 的构造函数和成员函数的空类类型。

缺陷报告

下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。

DR 应用于 出版时的行为 正确行为
LWG 2510 C++11 默认构造函数为非 explicit ,能导致歧义 使之为 explicit

参阅

(C++11)
用于选择具分配器的构造函数的 std::allocator_arg_t 对象
(常量)
(C++11)
检查指定的类型是否支持使用分配器的构造
(类模板)