tmp/tmpz2r81lnl/{from.md → to.md}
RENAMED
|
@@ -0,0 +1,20 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#### General <a id="comparisons.general">[[comparisons.general]]</a>
|
| 2 |
+
|
| 3 |
+
The library provides basic function object classes for all of the
|
| 4 |
+
comparison operators in the language [[expr.rel]], [[expr.eq]].
|
| 5 |
+
|
| 6 |
+
For templates `less`, `greater`, `less_equal`, and `greater_equal`, the
|
| 7 |
+
specializations for any pointer type yield a result consistent with the
|
| 8 |
+
implementation-defined strict total order over pointers
|
| 9 |
+
[[defns.order.ptr]].
|
| 10 |
+
|
| 11 |
+
[*Note 1*: If `a < b` is well-defined for pointers `a` and `b` of type
|
| 12 |
+
`P`, then `(a < b) == less<P>()(a, b)`, `(a > b) == greater<P>()(a, b)`,
|
| 13 |
+
and so forth. — *end note*]
|
| 14 |
+
|
| 15 |
+
For template specializations `less<void>`, `greater<void>`,
|
| 16 |
+
`less_equal<void>`, and `greater_equal<void>`, if the call operator
|
| 17 |
+
calls a built-in operator comparing pointers, the call operator yields a
|
| 18 |
+
result consistent with the implementation-defined strict total order
|
| 19 |
+
over pointers.
|
| 20 |
+
|