std::ranges:: equal_to
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Old binders and adaptors | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
定义于头文件
<functional>
|
||
|
struct
equal_to
;
|
(C++20 起) | |
用于执行比较的函数对象。函数调用运算符的参数类型(但不包括返回类型)会根据参数进行推导。
目录 |
嵌套类型
| 嵌套类型 | 定义 |
is_transparent
|
未指定 |
成员函数
|
operator()
|
检查参数是否
相等
(公开成员函数) |
std::ranges::equal_to:: operator()
|
template
<
class
T,
class
U
>
constexpr bool operator ( ) ( T && t, U && u ) const ; |
||
给定表达式 std:: forward < T > ( t ) == std:: forward < U > ( u ) 为 expr :
-
-
对于两个转换后的指针(类型为
P),若一个指针在 实现定义的指针严格全序 false ,否则返回 true 。 -
若从
T到P的转换序列或从U到P的转换序列不满足 等值保持性 ,则行为未定义。
-
对于两个转换后的指针(类型为
- 否则:
-
- 返回 expr 的结果。
- 若 std:: equality_comparable_with < T, U > 不被满足,则行为未定义。
此重载仅当满足 std:: equality_comparable_with < T, U > 时参与重载决议。
注释
与
std::equal_to
相比,
std::ranges::equal_to
额外要求
!=
操作必须有效,且要求两个参数类型都需(同质)满足与自身可比较的条件(通过
equality_comparable_with
约束实现)。
示例
|
本节内容不完整
原因:缺少示例 |
缺陷报告
下列行为变更缺陷报告被追溯应用于先前发布的 C++ 标准。
| 缺陷报告 | 应用于 | 发布时的行为 | 正确行为 |
|---|---|---|---|
| LWG 3530 | C++20 | 指针比较时语法检查被放宽 | 仅放宽语义要求 |
参见
|
实现
x
==
y
的函数对象
(类模板) |