以下是使用 Lookup 方法来模拟 operator[] 的例子:
// 假设 pMap 是一个 CMapStringToPtr 对象
CString strKey = _T("ExampleKey");
// 使用 Lookup 方法查找键对应的值
void* ptrValue = nullptr;
if (pMap.Lookup(strKey, ptrValue)) {
// 找到了,ptrValue 中存储了与键关联的指针值
// 这里可以对 ptrValue 进行操作
} else {
// 没有找到,可以根据需要进行处理
}
// 如果你希望直接使用类似于数组的索引方式,可以封装成一个函数
void* GetValueFromMap(CMapStringToPtr& map, LPCTSTR key) {
void* value = nullptr;
map.Lookup(key, value);
return value;
}
// 使用类似数组的索引方式获取值
void* ptrValue = GetValueFromMap(pMap, _T("ExampleKey"));
虽然没有直接的 operator[],但通过使用 Lookup 方法,你可以实现类似的功能来检索映射中的值。
转载请注明出处:http://www.zyzy.cn/article/detail/18769/MFC/CMapStringToPtr