1

我想创建一个包含三个宽字符数组的数组,其中一个是键。

“LPWCH,LPWCH,LPWCH”无法使用大于/小于符号,因为它认为它是一个标签

Hash_map 只允许我使用一对。wKey 和与之关联的元素。是否有另一种数据结构可以让我使用它?

这个集合几乎同时被不同的线程更新。这就是为什么我不想使用一个类或另一个结构来定义剩余的两个宽字符数组的原因。

4

2 回答 2

2

您可以LPWCH用作键和std::pair<LPWCH, LPWCH>元素。

于 2011-07-12T20:21:35.220 回答
1

使用任何 LP-typedef 都不好。你只会比较点,而不是字符串。 LPWCH只不过是一个WCHAR*可以深入到void*. 当您比较两个指针时,您是在比较它们指向的位置,而不是它们指向的内容。

您要么需要将另一个比较器附加到您的 map/hash_map,要么使用实际的字符串数据类型(如std::string, CString

于 2011-07-13T15:35:11.550 回答