C++ 具名要求:函数对象 (FunctionObject)
来自cppreference.com
函数对象 (FunctionObject) 类型是可用在函数调用运算符左侧的对象的类型。
要求
若满足下列条件,则类型 T
满足 函数对象 (FunctionObject)
- 类型
T
满足 std::is_object,且
给定
-
T
或const T
类型的值f
-
args
,为适合的实参列表,可以为空
则下列表达式必须合法:
表达式 | 要求 |
---|---|
f(args) | 进行函数调用 |
注解
函数和到函数的引用不是函数对象类型,但因为函数到指针隐式转换,它们能用在期待函数对象类型的地方。
标准库
- 所有函数指针都满足此要求。
- 所有定义于 <functional> 的函数对象。
- 某些 <functional> 的函数的返回类型。