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;
   };

Parameters

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

  • _Left
    The object that the _Pm member function is called on.

  • _Right
    The argument that is being given to _Pm.

Return Value

An adaptable binary function.

Remarks

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).

Example

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.

Requirements

Header: <functional>

Namespace: std

See Also

Reference

Thread Safety in the Standard C++ Library

Standard Template Library

Other Resources

<functional> Members