mem_fun_t Class

An adapter class that allows a non_const member function that takes no arguments to be called as a unary function object when initialized with a pointer argument.

template<class Result, class Type>
   class mem_fun_t : public unary_function<Type *, Result> {
      explicit mem_fun_t(Result ( Type::*_Pm )( ) );
      Result operator()( Type* _Pleft ) const;
   };

Parameters

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

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

Return Value

An adaptable unary 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 (_Pleft->* _Pm)( ).

Example

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

Requirements

Header: <functional>

Namespace: std

See Also

Reference

<functional>

Thread Safety in the C++ Standard Library

Standard Template Library