std::pmr::operator==, std::pmr::operator!=
来自cppreference.com
< cpp | memory | polymorphic allocator
在标头 <memory_resource> 定义 | ||
template<class T1, class T2 > bool operator==(conststd::pmr::polymorphic_allocator<T1>& lhs, | (1) | (C++17 起) |
friendbool operator==(const polymorphic_allocator& lhs, const polymorphic_allocator& rhs )noexcept; | (2) | (C++17 起) |
template<class T1, class T2 > bool operator!=(conststd::pmr::polymorphic_allocator<T1>& lhs, | (3) | (C++17 起) (C++20 前) |
friendbool operator!=(const polymorphic_allocator& lhs, const polymorphic_allocator& rhs )noexcept; | (4) | (C++17 起) (C++20 前) |
比较两个多态分配器。若两个多态分配器的底层内存资源比较相等,则它们比较相等。
1) 返回 *lhs.resource()==*rhs.resource()。
2) 同 (1),允许到
此函数对常规的无限定或有限定查找不可见,而只能在 std::pmr::polymorphic_allocator 为实参的关联类时由实参依赖查找找到。
polymorphic_allocator
的转换。此函数对常规的无限定或有限定查找不可见,而只能在 std::pmr::polymorphic_allocator 为实参的关联类时由实参依赖查找找到。
3) 返回 !(lhs == rhs)。
4) 同 (3),允许到
此函数对常规的无限定或有限定查找不可见,而只能在 std::pmr::polymorphic_allocator 为实参的关联类时由实参依赖查找找到。
polymorphic_allocator
的转换。此函数对常规的无限定或有限定查找不可见,而只能在 std::pmr::polymorphic_allocator 为实参的关联类时由实参依赖查找找到。
| (C++20 起) |
[编辑]参数
lhs, rhs | - | 要比较的多态分配器 |
[编辑]返回值
1,2)*lhs.resource()==*rhs.resource()
3,4)!(lhs == rhs)
[编辑]缺陷报告
下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。
缺陷报告 | 应用于 | 出版时的行为 | 正确行为 |
---|---|---|---|
LWG 3683 | C++17 | polymorphic_allocator 不能与能转换到它的类型比较 | 添加了重载 |