类模板
<functional>
std::mem_fun1_ref_t
template <class S, class T, class A> class mem_fun1_ref_t;
从单参数成员(引用版本)生成函数对象类
从类
T的成员生成二元函数对象类,该成员接受类型为
A的参数并返回类型为
S的值。
mem_fun1_ref_t通常用作一个类型。可以使用头文件<functional>中定义的
mem_fun_ref函数直接构造此类型的对象。
此类派生自
binary_function,通常定义为
1 2 3 4 5 6 7 8 9
|
template <class S, class T, class A>
class mem_fun1_ref_t : public binary_function <T,A,S>
{
S (T::*pmem)(A);
public:
explicit mem_fun1_ref_t ( S (T::*p)(A) ) : pmem (p) {}
S operator() (T& p, A x) const
{ return (p.*pmem)(x); }
};
|
成员
- 构造函数
- 从类T的成员函数p构造二元函数对象类。此成员函数的返回类型应与类型S兼容。
- S operator() (T* p, A x)
- 接受两个参数的成员函数:p是类型为T的对象,其成员将与x作为参数一起调用。
另见
- mem_fun_ref
- 将成员函数转换为函数对象(引用版本)(函数模板)
- mem_fun_ref_t
- 从无参数成员生成函数对象类(引用版本)(类模板)
- binary_function
- 二元函数对象基类 (类模板)