我如何(在C ++ 20概念中)要求类型T是对浮点类型的引用?

时间:2020-08-21 16:47:50

标签: c++ reference c++20 c++-concepts

在C ++ 20概念库中,存在std::floating_point<T>“仅当T是浮点类型时才满足”(screenshot_71)。但是我需要T成为浮点类型的引用。表示此的requires子句是什么?

1 个答案:

答案 0 :(得分:4)

正如戴维斯在评论中所说,只需使用特征类型:

template <typename T>
concept is_floating_point_reference = 
    std::is_reference_v<T> &&
    std::floating_point<std::remove_reference_t<T>>;