命名空间
变体
操作

自定义点对象 (C++20 起)

来自 cppreference.cn
< cpp‎ | 标准库

[编辑] 说明

名称 cpo 指代一个自定义点对象,它是一个 const 函数对象,其类型为 字面量 semiregular 类类型。为了说明目的,其 cv-unqualified 版本类型表示为 __cpo_fn

所有 __cpo_fn 的实例都相等。无论表示实例的表达式是左值还是右值,以及是否具有 const 限定(但是,volatile 限定的实例不要求可调用),在相同参数上调用不同 __cpo_fn 类型实例的效果是等价的。因此,cpo 可以自由复制,并且其副本可以互换使用。

给定一组类型 Args...,如果 std::declval<Args>()... 满足上面 cpo 的参数要求,则 __cpo_fn 遵循

否则,__cpo_fn 的任何函数调用运算符都不参与重载决议。

[编辑] 参见