std::equal_to, not_equal_to, less, greater, less_equal, greater_equal(std::experimental::propagate_const)
来自cppreference.com
                    
                                        
                    < cpp | experimental | propagate const
                    
                                                            
                    |   template<class T> struct equal_to<std::experimental::propagate_const<T>>;  | 
(库基础 TS v2) | |
|   template<class T> struct not_equal_to<std::experimental::propagate_const<T>>;  | 
(库基础 TS v2) | |
|   template<class T> struct less<std::experimental::propagate_const<T>>;  | 
(库基础 TS v2) | |
|   template<class T> struct greater<std::experimental::propagate_const<T>>;  | 
(库基础 TS v2) | |
|   template<class T> struct less_equal<std::experimental::propagate_const<T>>;  | 
(库基础 TS v2) | |
|   template<class T> struct greater_equal<std::experimental::propagate_const<T>>;  | 
(库基础 TS v2) | |
为 std::experimental::propagate_const<T> 部分特化标准比较函数对象。
令 p.t_ 代表 std::experimental::propagate_const<T> p 所包装的仿指针对象,则给定 std::experimental::propagate_const<T> 类型的指针 p 和 q ,下列应当成立:
- std::equal_to<std::experimental::propagate_const<T>>()(p, q) == std::equal_to<T>()(p.t_, q.t_)
 - std::not_equal_to<std::experimental::propagate_const<T>>()(p, q) == std::not_equal_to<T>()(p.t_, q.t_)
 - std::less<std::experimental::propagate_const<T>>()(p, q) == std::less<T>()(p.t_, q.t_)
 - std::greater<std::experimental::propagate_const<T>>()(p, q) == std::greater<T>()(p.t_, q.t_)
 - std::less_equal<std::experimental::propagate_const<T>>()(p, q) == std::less_equal<T>()(p.t_, q.t_)
 - std::greater_equal<std::experimental::propagate_const<T>>()(p, q) == std::greater_equal<T>()(p.t_, q.t_)
 
注意
这些特化确保 T 为指针类型时,这些类模板对 std::experimental::propagate_const<T> 的特化产出全序,即使对应的内建运算符不如此。
示例
| 本节未完成 原因:暂无示例  | 
参阅
|   实现 x == y 的函数对象  (类模板)  | |
|   实现 x != y 的函数对象  (类模板)  | |
|   实现 x < y 的函数对象  (类模板)  | |
|   实现 x > y 的函数对象  (类模板)  | |
|   实现 x <= y 的函数对象  (类模板)  | |
|   实现 x >= y 的函数对象  (类模板)  |