次の方法で共有


CompareElements

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

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

パラメーター

  • タイプ
    比較される最初の要素の型。

  • 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

参照

参照

CList クラス

CMap クラス

概念

MFC マクロとグローバル