Namespaces
Variants

C++ named requirements: CustomizationPointObject (since C++20)

From cppreference.net
C++ named requirements

定制点对象 是字面量 semiregular 类类型的无状态 函数对象

相同类类型的所有定制点对象都是等价的。无论表示实例的表达式是左值还是右值、是否带有const限定符,调用该类型的不同实例对相同参数产生的效果都是等价的。但带有volatile限定符的实例不要求必须可调用。因此,定制点对象可以自由复制,且副本可以互换使用。

Fn 为定制点对象类型, Args... 为一组类型,若 std:: declval < Args > ( ) ... 满足对 Fn 参数的调用要求,则 Fn 满足

否则, Fn 的函数调用运算符不会参与重载决议。