CStringElementTraitsI 类
此类提供与集合类对象中存储的关于字符串的静态函数。 它类似于 CStringElementTraits,但执行不区分大小写的比较。
语法
template <typename T, class CharTraits = CDefaultCharTraits<T ::XCHAR>>
class CStringElementTraitsI : public CElementTraitsBase<T>
参数
T
要存储在集合中的数据类型。
成员
公共 Typedef
名称 | 描述 |
---|---|
CStringElementTraitsI::INARGTYPE | 用于将元素添加到集合类对象的数据类型。 |
CStringElementTraitsI::OUTARGTYPE | 用于从集合类对象中检索元素的数据类型。 |
公共方法
名称 | 描述 |
---|---|
CStringElementTraitsI::CompareElements | 调用此静态函数可比较两个字符串元素的等同性,从而忽略大小写的差异。 |
CStringElementTraitsI::CompareElementsOrdered | 调用此静态函数来比较两个字符串元素,从而忽略大小写的差异。 |
CStringElementTraitsI::Hash | 调用此静态函数以计算给定字符串元素的哈希值。 |
注解
此类提供用于比较字符串和创建哈希值的静态函数。 使用集合类存储基于字符串的数据时,这些函数非常有用。 当字符串对象要作为引用进行处理时,请使用 CStringRefElementTraits。
有关详细信息,请参阅 ATL 集合类。
继承层次结构
CStringElementTraitsI
要求
标头:atlcoll.h
CStringElementTraitsI::CompareElements
调用此静态函数可比较两个字符串元素的等同性,从而忽略大小写的差异。
static bool CompareElements(INARGTYPE str1, INARGTYPE str2) throw();
参数
str1
第一个字符串元素。
str2
第二个字符串元素。
返回值
如果元素相等,则返回 true;否则返回 false。
注解
比较不需要区分大小写。
CStringElementTraitsI::CompareElementsOrdered
调用此静态函数来比较两个字符串元素,从而忽略大小写的差异。
static int CompareElementsOrdered(INARGTYPE str1, INARGTYPE str2) throw();
参数
str1
第一个字符串元素。
str2
第二个字符串元素。
返回值
如果字符串相同,则为零;如果 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;