名前空間
変種
操作

名前付き要件: EqualityComparable

提供: cppreference.com
< cpp‎ | named req
 
 
名前付き要件
基本
レイアウト
ライブラリ全体
EqualityComparable
(C++11)
(C++11)
コンテナ
コンテナの要素
イテレータ
ストリーム入出力
乱数
並行処理
(C++11)

(C++11)
(C++11)
その他
 

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

[編集] 要件

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

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

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

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

[編集] ノート

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

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