Classes value_compare Class
hash_map ディレクティブの相対位置を決定するキーの値を比較して hash_map の要素を比較できる関数オブジェクトを提供します。
class value_compare
: std::public binary_function<value_type, value_type, bool>
{
public:
bool operator( )(
const value_type& _Left,
const value_type& _Right ) const
{
return ( comp( _Left.first, _Right.first ) );
}
protected:
value_compare( const key_compare& c ) : comp (c) { }
key_compare comp;
};
解説
hash_map に含まれているすべての要素の value_types 間の value_compare によって提供される比較条件は、許可クラスの構造で、それぞれの要素のキーの比較で発生します。メンバー関数の演算子は 2 個の要素の並べ替えキーのコンポーネントを比較するに value_compare によって提供される関数オブジェクトに格納されている型 key_compare のオブジェクト comp を使用します。
キー値が要素の値と同一の単純なコンテナーの hash_multisets、および hash_sets については、value_compare は key_compareに相当します; hash_maps と hash_multimaps でこれらは、型の pair の要素の値は、要素のキー値と同じではないため、ありません。
Visual C++ .NET 2003 では、<hash_map> と <hash_set> ヘッダー ファイルのメンバーは std の名前空間に存在しなくなりましたが、ではなく stdext の名前空間に型。詳細については、「The stdext Namespace」を参照してください。
使用例
value_compare を宣言および使用する方法の例に hash_map::value_comp の例を参照してください。
必要条件
ヘッダー: <hash_map>
名前空間: の stdext