模板类型的值,如std :: false_type

时间:2018-05-03 00:21:37

标签: c++ templates

如果std::false_type是一种类型,这种类型的有效值是多少? 如果我只是想实现一个返回类型为std::false_type的函数,那么我怎么能实现这个呢?

typename std::false_type operator()(){
   return declval<std::false_type>();
}

2 个答案:

答案 0 :(得分:1)

按照评论中的建议尝试return std::false_type{};return {};

答案 1 :(得分:1)

std::false_type唯一可以拥有的值是默认构造的值。它是一个没有非静态数据成员的类类型,也没有用户定义的构造函数。

std::false_type operator()(){
    return {};
}