名前空間
変種
操作

名前付き要件:EqualityComparable

提供: cppreference.com
< cpp‎ | named req
 
 
 

この型は == 演算子が動作しなければならず、その結果は標準のセマンティクスを持つべきです。

[編集]要件

以下の内容を満たす場合、型 TEqualityComparable を満たします。

  • T または const T 型の式 a, b, c

が与えられたとき、以下の式が有効でなければならず、指定された効果を持たなければなりません。

戻り値の型要件
a == bbool暗黙に変換可能同等関係を確立する、つまり、以下の性質を満たす。
  • a のすべての値について、 a == atrue である。
  • a == b であれば b == a が成り立つ。
  • a == b かつ b == c であれば a == c が成り立つ。

[編集]ノート

この要件を満たすためには、組み込みの比較演算子を持たない型はユーザ定義の operator== を提供しなければなりません。

EqualityComparableLessThanComparable の両方を満たす型に対して、 C++ 標準ライブラリは式 a == b の値である等しいと式 !(a < b)&&!(b < a) の値である同等を区別します。

close