次の方法で共有


CompareElements

更新 : 2007 年 11 月

CList::Find からは直接、CMap::LookupCMap::operator [] からは間接的に呼び出されます。

template<class TYPE, class ARG_TYPE> 
BOOL AFXAPI CompareElements(
   const TYPE* pElement1,
   const ARG_TYPE* pElement2 
);

パラメータ

  • TYPE
    比較される最初の要素の型。

  • pElement1
    比較される最初の要素へのポインタ。

  • ARG_TYPE
    比較される 2 番目の要素の型。

  • pElement2
    比較される 2 番目の要素へのポインタ。

戻り値

pElement1 で指されるオブジェクトと pElement2 で指されるオブジェクトが等しい場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

CMap の呼び出しは、CMap のテンプレートパラメータ KEY と ARG_KEY を使います。

既定の実装では *pElement1*pElement2 の比較の結果を返します。アプリケーションにとって適切な方法で要素を比較するには、この関数をオーバーライドします。

C++ 言語では、単純な型 (char、int、float など) の比較演算子 (==) が定義されていますが、クラスや構造体の比較演算子は定義されていません。CompareElements を使いたいとき、または CompareElements を使うコレクション クラスの 1 つをインスタンス化する場合は、比較演算子を定義するか、適切な値を返すバージョンの CompareElements をオーバーロードする必要があります。

必要条件

ヘッダー : afxtempl.h

参照

概念

MFC マクロとグローバル

参照

CList クラス

CMap クラス