CStringElementTraitsI クラス
このクラスは、コレクション クラス オブジェクトに格納される文字列に関連する静的関数を提供します。 CStringElementTraits に似ていますが、大文字と小文字を区別しない比較が行われます。
構文
template <typename T, class CharTraits = CDefaultCharTraits<T ::XCHAR>>
class CStringElementTraitsI : public CElementTraitsBase<T>
パラメーター
T
コレクションに保存されるデータの型。
メンバー
パブリック typedef
名前 | 説明 |
---|---|
CStringElementTraitsI::INARGTYPE | コレクション クラス オブジェクトに要素を追加するために使用するデータ型。 |
CStringElementTraitsI::OUTARGTYPE | コレクション クラス オブジェクトから要素を取得するために使用するデータ型。 |
パブリック メソッド
名前 | 説明 |
---|---|
CStringElementTraitsI::CompareElements | 2 つの文字列要素が等しいかどうかを比較するには、この静的関数を呼び出します。大文字と小文字の違いは無視されます。 |
CStringElementTraitsI::CompareElementsOrdered | 2 つの文字列要素を比較するには、この静的関数を呼び出します。大文字と小文字の違いは無視されます。 |
CStringElementTraitsI::Hash | 特定の文字列要素のハッシュ値を計算するには、この静的関数を呼び出します。 |
解説
このクラスでは、文字列を比較し、ハッシュ値を作成するための静的関数が提供されます。 これらの関数は、コレクション クラスを使用して文字列ベースのデータを格納する場合に便利です。 文字列オブジェクトが参照として処理される場合は、CStringRefElementTraits を使用します。
詳細については、「ATL コレクション クラス」を参照してください。
継承階層
CStringElementTraitsI
要件
ヘッダー: atlcoll.h
CStringElementTraitsI::CompareElements
2 つの文字列要素が等しいかどうかを比較するには、この静的関数を呼び出します。大文字と小文字の違いは無視されます。
static bool CompareElements(INARGTYPE str1, INARGTYPE str2) throw();
パラメーター
str1
最初の文字列要素。
str2
2 つ目の文字列要素。
戻り値
要素が等しい場合は true、それ以外の場合は false を返します。
解説
比較では大文字と小文字は区別されません。
CStringElementTraitsI::CompareElementsOrdered
2 つの文字列要素を比較するには、この静的関数を呼び出します。大文字と小文字の違いは無視されます。
static int CompareElementsOrdered(INARGTYPE str1, INARGTYPE str2) throw();
パラメーター
str1
最初の文字列要素。
str2
2 つ目の文字列要素。
戻り値
文字列が同一の場合は 0、str1 が str2 未満の場合は < 0、str1 が str2 より大きい場合は > 0 です。 この比較を実行するには、CStringT::Compare メソッドが使用されます。
解説
比較では大文字と小文字は区別されません。
CStringElementTraitsI::Hash
特定の文字列要素のハッシュ値を計算するには、この静的関数を呼び出します。
static ULONG Hash(INARGTYPE str) throw();
パラメーター
str
文字列要素。
戻り値
文字列の内容を使用して計算されたハッシュ値を返します。
CStringElementTraitsI::INARGTYPE
コレクション クラス オブジェクトに要素を追加するために使用するデータ型。
typedef T::PCXSTR INARGTYPE;
CStringElementTraitsI::OUTARGTYPE
コレクション クラス オブジェクトから要素を取得するために使用するデータ型。
typedef T& OUTARGTYPE;