std::equivalence_relation

< cpp‎ | concepts
定义于头文件 <concepts>
template < class R, class T, class U >
concept equivalence_relation = std::relation<R, T, U>;
(C++20 起)

概念 equivalence_relation<R, T, U> 指定 relation R 在其参数上施加等价关系。

语义要求

关系 r 为等价关系若

  • 它为自反:对于所有 xr(x, x)true
  • 它为对称:对于所有 abr(a, b)true 当且仅当 r(b, a)true
  • 它为传递: r(a, b) && r(b, c) 蕴含 r(a, c)

注解

relationequivalence_relation 间的区别是纯语义的。