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::nonesuchstd::experimental::detected_t 用以指示检测失败的类类型。

nonesuch 无默认构造函数或 intializer_list 构造函数,且非聚合体。

注意

不能构造、析构或销毁 nonesuch

缺陷报告

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

缺陷报告 应用于 出版时的行为 正确行为
LWG 2960 LFTSv2 nonesuch 可为聚合体并拥有源自 {} 的隐式转换序列 使之为非聚合体并移除 ICS