result_type from the base classes unary_function and binary_function). Sometimes those typedefs are required, not just optional.
Adaptors are provided to turn pointers to unary (single-argument) and binary (double-argument) functions into function objects. The long-winded functor pointer_to_unary_function is constructed with a function pointer f, and its operator() called with argument x returns f(x). The functor pointer_to_binary_function does the same thing, but with a double-argument f and operator().
The function ptr_fun takes a pointer-to-function f and constructs an instance of the appropriate functor.
| pointer_to_binary_function<_Arg1, _Arg2, _Result> std::ptr_fun | ( | _Result(*)(_Arg1, _Arg2) | __x | ) | [inline] |
| pointer_to_unary_function<_Arg, _Result> std::ptr_fun | ( | _Result(*)(_Arg) | __x | ) | [inline] |
1.5.1