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 の関数呼び出し演算子はオーバーロード解決に参加しません。