命名空间
Variants
操作

std::experimental::nonesuch

来自 cppreference.com
定义在头文件 <experimental/type_traits>
struct nonesuch {

    ~nonesuch() = delete;
    nonesuch(nonesuch const&) = delete;
    void operator=(nonesuch const&) = delete;

};
(库基础 TS v2)

std::experimental::nonesuch 是一个类类型,用于 std::experimental::detected_t 来指示检测失败。

nonesuch 没有默认构造函数或初始化列表构造函数,并且不是聚合。

[编辑] 注释

nonesuch 无法构造、销毁或复制。

[编辑] 缺陷报告

以下行为更改缺陷报告已追溯应用于先前发布的 C++ 标准。

DR 应用于 已发布的行为 正确行为
LWG 2960 LFTSv2 nonesuch 可以是聚合,并且具有来自 {} 的隐式转换序列 改为非聚合,并删除 ICS