std::experimental::ranges:: StrictWeakOrder
| Technical Specification | ||||
| Filesystem library (filesystem TS) | ||||
| Library fundamentals (library fundamentals TS) | ||||
| Library fundamentals 2 (library fundamentals TS v2) | ||||
| Library fundamentals 3 (library fundamentals TS v3) | ||||
| Extensions for parallelism (parallelism TS) | ||||
| Extensions for parallelism 2 (parallelism TS v2) | ||||
| Extensions for concurrency (concurrency TS) | ||||
| Extensions for concurrency 2 (concurrency TS v2) | ||||
| Concepts (concepts TS) | ||||
| Ranges (ranges TS) | ||||
| Reflection (reflection TS) | ||||
| Mathematical special functions (special functions TR) | ||||
| Experimental Non-TS | ||||
| Pattern Matching | ||||
| Linear Algebra | ||||
| std::execution | ||||
| Contracts | ||||
| 2D Graphics |
| Core language concepts | |||||||||||||
| Object concepts | |||||||||||||
| Comparison concepts | |||||||||||||
| Callable concepts | |||||||||||||
|
|||||||||||||
| URNG concept | |||||||||||||
|
Определено в заголовочном файле
<experimental/ranges/concepts>
|
||
|
template
<
class
R,
class
T,
class
U
>
concept bool StrictWeakOrder = Relation < R, T, U > ; |
(1) | (ranges TS) |
Концепт
StrictWeakOrder<R, T, U>
определяет, что
Relation
R
задает строгое слабое упорядочение на своих аргументах. Отношение
r
является строгим слабым упорядочением, если
-
оно иррефлексивно: для всех
x,r(x, x)ложно; -
оно транзитивно: для всех
a,bиc, еслиr(a, b)иr(b, c)оба истинны, тогдаr(a, c)истинно; -
пусть
e(a, b)равно!r(a, b) && !r(b, a), тогдаeтранзитивно:e(a, b) && e(b, c)влечётe(a, c).
При этих условиях можно показать, что
e
является отношением эквивалентности, а
r
индуцирует строгий полный порядок на классах эквивалентности, определяемых
e
.
Примечания
Различие между
Relation
и
StrictWeakOrder
является чисто семантическим.