Symbian中的HashMap

时间:2009-06-19 10:05:21

标签: symbian

我想在symbian中实现Hashmap

取两个值

是否有任何机构实施它

有类RHashMap,RHashTable但我想传递descrpter和value

除此之外还有任何其他类别的解决方案

提前致谢

2 个答案:

答案 0 :(得分:2)

我认为文档没有说清楚你应该有一个包含整数和描述符的类。

你需要实现的THashFunction32接受你的类的一个实例并返回它的整数成员。

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

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

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

答案 1 :(得分:1)

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

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

...

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

编辑:如果你想让一个键指向两个东西,那么只需将这两个东西封装在一个对象中。