1

我想在 symbian 中实现 Hashmap

这需要两个值

有没有实施它的机构

有类 RHashMap,RHashTable 但我想传递描述符和值

或者

否则还有其他解决方案吗

提前致谢

4

2 回答 2

2

我认为文档没有明确说明您可能应该拥有一个包含整数和描述符的类。

您需要实现的 THashFunction32 采用您的类的一个实例并返回它的整数成员。

您需要实现的 TIdentityRelation 采用您的类的两个实例并比较整数成员。

当您将类的实例插入 RHashMap 时,整数和描述符成员都需要具有有意义的值。

当您想从 RHashMap 中检索描述符时,您可以创建类的实例,但只设置整数成员值。将该对象用作 RHashMap::Find() 的参数,它将返回包含您要查找的描述符的类的实例。

于 2009-06-19T11:40:00.280 回答
1

RHashMap 是一个模板类型。您可以使用您需要的任何类,如下所示:

RhashMap<TInt,TPtr> map;
map.Insert(myInt,myDes);

...

myDes = map.FindL(myInt);
TInt error = map.Remove(myInt);
User::LeaveIfError(error);
map.Close();

编辑:如果您想要一个键指向两件事,那么只需将这两件事封装在一个对象中。

于 2009-07-20T14:07:42.423 回答