C++ named requirements: FunctionObject
A FunctionObject type is the type of an object that can be used on the left of the function call operator.
T satisfies FunctionObject if
- The type
Tsatisfies std::is_object, and
f, a value of type
args, suitable argument list, which may be empty
The following expressions must be valid:
|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.