std::equivalence_relation

来自cppreference.com
< 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 为等价关系若

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

注解

relation 与 equivalence_relation 间的区别是纯语义的。