You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
|
|
#pragma once
|
|
|
|
|
|
class CMapStringToPtrNoCase : public CMapStringToPtr {
|
|
|
|
|
|
public:
|
|
|
|
|
|
BOOL Lookup(LPCTSTR key, void*& rValue) const {
|
|
|
|
|
|
CString currentKey;
|
|
|
|
|
|
POSITION pos = GetStartPosition();
|
|
|
|
|
|
|
|
|
|
|
|
while (pos) {
|
|
|
|
|
|
GetNextAssoc(pos, currentKey, rValue);
|
|
|
|
|
|
|
|
|
|
|
|
if (_tcsicmp(currentKey, key) == 0) {
|
|
|
|
|
|
return TRUE;
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return FALSE;
|
|
|
|
|
|
}
|
|
|
|
|
|
//// <20><><EFBFBD><EFBFBD>HashKey<65><79><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>CString::MakeUpper<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵת<D6B5><D7AA>Ϊ<EFBFBD><CEAA>д<EFBFBD><D0B4>Ȼ<EFBFBD><C8BB><EFBFBD><EFBFBD><EFBFBD>ø<EFBFBD><C3B8><EFBFBD><EFBFBD><EFBFBD>HashKey<65><79><EFBFBD><EFBFBD>
|
|
|
|
|
|
//UINT HashKey(LPCTSTR key) const {
|
|
|
|
|
|
// CString upperKey = key;
|
|
|
|
|
|
// upperKey.MakeUpper();
|
|
|
|
|
|
// return CMapStringToPtr::HashKey(upperKey);
|
|
|
|
|
|
//}
|
|
|
|
|
|
//// <20><><EFBFBD><EFBFBD>CompareElements<74><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>CString::CompareNoCase<73><65><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƚϼ<C8BD>ֵ
|
|
|
|
|
|
//BOOL CompareElements(LPCTSTR key1, LPCTSTR key2) const {
|
|
|
|
|
|
// CString strKey1(key1);
|
|
|
|
|
|
// CString strKey2(key2);
|
|
|
|
|
|
// return strKey1.CompareNoCase(strKey2) == 0;
|
|
|
|
|
|
//}
|
|
|
|
|
|
};
|
|
|
|
|
|
|