This documentation is archived and is not being maintained.

mem_fun1_ref_t Class

An adapter class that allows a non_const member function that takes a single argument to be called as a binary function object when initialized with a reference argument.

template<class Result, class Type, class Arg>
   class mem_fun1_ref_t : public binary_function<Type, Arg, Result> {
      explicit mem_fun1_ref_t(
         Result (Type::* _Pm )( Arg )
      Result operator()(
         Type& _Left, 
         Arg _Right
      ) const;


A pointer to the member function of class Type to be converted to a function object.


The object that the _Pm member function is called on.


The argument that is being given to _Pm.

An adaptable binary function.

The template class stores a copy of _Pm, which must be a pointer to a member function of class Type, in a private member object. It defines its member function operator() as returning (_Left.* _Pm)(_Right).

The constructor of mem_fun1_ref_t is not usually used directly; the helper function mem_fun_ref is used to adapt member functions. See mem_fun_ref for an example of how to use member function adaptors.

Header: <functional>

Namespace: std