请教一个关于hash_map的问题

smallstar110 2011-06-18 02:58:51
hash_map<LPCTSTR,LPCTSTR> maptest;
maptest[L"hi"] = L"hihi";
maptest[L"no"] = L"nono";
if (maptest.find(L"hi") != maptest.end())
{
RETAILMSG(1,(L"is Find===\r\n"));
} 执行无打印信息
...全文
128 点赞 收藏 8
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
ryfdizuo 2011-06-18
恩。那就结贴吧。
回复
smallstar110 2011-06-18
谢谢,我改成这样就可以了。我的程序没用MFC
hash_map<wstring,wstring> maptest;
maptest[L"hi"] = L"hihi";
maptest[L"no"] = L"nono";
if (maptest.find(L"hi") != maptest.end())
{
RETAILMSG(1,(L"is Find===\r\n"));
}
回复
ryfdizuo 2011-06-18
那就用CString吧,
CString重载了比较运算符
回复
smallstar110 2011-06-18
编译报错 error C2039: 'bucket_size' : is not a member of 'wcmp_str'
回复
smallstar110 2011-06-18
谢谢,那要怎么写呢
回复
ryfdizuo 2011-06-18
struct wcmp_str
{
bool operator()(LPCTSTR const a, LPCTSTR const b)
{
return wcscmp(a, b) < 0;
}
};
hash_map<LPCTSTR,LPCTSTR, wcmp_str> maptest;
回复
ryfdizuo 2011-06-18
LPCTSTR使用wcscmp
回复
ryfdizuo 2011-06-18
LPCTSTR比较直接比较的是地址。
需要strcmp比较。
回复
相关推荐
发帖
其它技术问题
创建于2007-09-28

3849

社区成员

C/C++ 其它技术问题
申请成为版主
帖子事件
创建了帖子
2011-06-18 02:58
社区公告
暂无公告