【LibUIDK系列文章】使用字符串作为map的Key
2017-10-02 21:45
225 查看
作者:刘树伟
日期:2017-03-18
当使用字符串作为map的Key,你可以定义map如下:
std::map<LPCTSTR, int> mapValue;
但这是有问题的,因为map在查找的时候,进行的是key的比较,也就是LPCTSTR的比较,而不是LPCTSTR内容的比较,所以即使你使用相同内容的不同字符串指针进行查找,也是查找不到的。应该使用CString、std::string等来定义Key.
作者:刘树伟
日期:2017-03-18
当使用字符串作为map的Key,你可以定义map如下:
std::map<LPCTSTR, int> mapValue;
但这是有问题的,因为map在查找的时候,进行的是key的比较,也就是LPCTSTR的比较,而不是LPCTSTR内容的比较,所以即使你使用相同内容的不同字符串指针进行查找,也是查找不到的。应该使用CString、std::string等来定义Key.
相关文章推荐
- Map使用非系统类作为key,要覆写equals和hashCode方法
- map中无法使用TCHAR*作为key的解决方法
- linux下C++ STL hash_map的使用以及使用char *型变量作为Key值的一大“坑”
- groovy 使用变量值作为 map 的key--需要注意的
- Java 在 Map 中使用复杂数据类型作为 Key
- 在主方法中创建map集合中存储3个学生对象.key使用字符串表示编号(不能重复)value是学生对象。然后调用以下两个方法;
- 使用用户自定义类型作为map的key
- java中map使用非系统类作为key
- 从标准输入中读取两个字符串 name:表示姓名,hobby:爱好;name作为key;hobby作为Value存入Map 然后根据姓名取得Value并打印,再根据name值删除map中的数据再打印ma
- GHashTable不能以字符串作为key,可以使用data list来代替
- 历年世界杯冠军队伍如下,使用map存储这些队伍,使用年份作为key,冠军队伍名称作为value。 完成下面的功能: 1) 输入一个年份,如果当年有世界杯比赛,则输出获奖队伍,如果没有则输出“当年没有举
- 如何根据CSV格式的第一列作为key,将后几列作为字符串放入map集合并写入文件的操作
- GO语言使用orm时,struct作为json输出,指定key的字符串
- Map中使用数组作为key的用法
- 字符串作为map的key
- 使用map来进行票数统计工作,循环输入多个人名,作为key存储到map中,对应的value就是该人获得的票数(即重复输入的次数),当重复输入时,需要对相应的数据进行修改。最红输quit结束循环,打印
- java中map使用非系统类作为key
- map中使用自定义类指针作为key
- Lisp语言:如何在hash table中使用字符串作为关键字(key)?
- map中使用自定义类指针作为key