cref 関数
引数から const の reference_wrapper を構築します。
template<class Ty>
reference_wrapper<const Ty> cref(const Ty& arg);
template<class Ty>
reference_wrapper<const Ty> cref(const reference_wrapper<Ty>& arg);
パラメーター
Ty
ラップする引数の型。arg
ラップする引数。
解説
1 つ目の関数は、reference_wrapper<const Ty>(arg.get()) を返します。これを使用して、const 参照をラップできます。2 つ目のメンバー関数は、reference_wrapper<const Ty>(arg) を返します。これを使用することで、const 参照としてラップされた参照を再度ラップできます。
使用例
// std_tr1__functional__cref.cpp
// compile with: /EHsc
#include <functional>
#include <iostream>
int neg(int val)
{
return (-val);
}
int main()
{
int i = 1;
std::cout << "i = " << i << std::endl;
std::cout << "cref(i) = " << std::cref(i) << std::endl;
std::cout << "cref(neg)(i) = "
<< std::cref(&neg)(i) << std::endl;
return (0);
}
必要条件
ヘッダー : <functional>
名前空間: std