C++ concepts: FunctionObject

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

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.