namespace std {
template <class T>
struct is_bind_expression;
template <class T>
inline constexpr bool is_bind_expression_v = is_bind_expression<T>::value; // C++17
}
概要
型 T
が bind()
の呼出し結果かどうかを判別する
要件
is_bind_expression
は、型 T
が std::bind()
の戻り値であれば true_type
から派生し、そうでなければ false_type
から派生する。
例
#include <functional>
static_assert(
std::is_bind_expression<
decltype(std::bind(std::less<int>(), std::placeholders::_1, 3))
>::value,
"a bind expression");
static_assert(
!std::is_bind_expression<decltype(std::less<int>()(2, 3))>::value,
"not a bind expression");
int main() {}
出力
バージョン
言語
- C++11
処理系
- Clang: ??
- GCC: 4.7.0 ✅
- ICC: ??
- Visual C++: ??