C++ named requirements: FunctionObject

From cppreference.com
< cpp‎ | named req
C++ named requirements

A FunctionObject type is the type of an object that can be used on the left of the function call operator.


The type T satisfies FunctionObject if


  • f, a value of type T or const T
  • args, suitable argument list, which may be empty

The following expressions must be valid:

Expression Requirements
f(args) performs a function call


Functions and references to functions are not function object types, but can be used where function object types are expected due to function-to-pointer implicit conversion.

Standard library