is_placeholder クラス
型がプレースホルダーであるかどうかをテストします。
template<class Ty>
struct is_placeholder {
static const int value;
};
解説
型 Ty がプレースホルダーではない場合、定数値 value は 0 です。それ以外の場合、この値は、バインドされる関数呼び出しの引数の位置になります。これを使って、N 番目のプレースホルダー _N の値 N を調べることができます。
使用例
// std_tr1__functional__is_placeholder.cpp
// compile with: /EHsc
#include <functional>
#include <iostream>
using namespace std::placeholders;
template<class Expr>
void test_for_placeholder(const Expr&)
{
std::cout << std::is_placeholder<Expr>::value << std::endl;
}
int main()
{
test_for_placeholder(3.0);
test_for_placeholder(_3);
return (0);
}
必要条件
ヘッダー : <functional>
名前空間: std