有没有办法评估函子的论点?

时间:2019-01-07 20:16:38

标签: c++ c++11 lambda functor negation

给出foovector,我想用all_of评估它的内容。但是我真正要检查的是,每个元素的求值结果为true

我可以通过使用logical_notnone_of来做到这一点,但我宁愿不使用双负数,并且写lambda感觉很愚蠢:[](const auto param) -> bool { return param; }

该标准是否为我提供了我想要的函子?

1 个答案:

答案 0 :(得分:6)

您正在寻找的是std::identity,它已添加到C ++ 20中。它接受一个参数,并保持不变。 operator()看起来像

template<typename T>
constexpr T&& operator()( T&& t ) const noexcept;

它返回

std::forward<T>(t)