シンビアンにハッシュマップを実装したい
2つの値を取ります
それを実装した団体はありますか
クラスRHashMap、RHashTableがありますが、記述子と値を渡したいです
また
他に、これに対する他のクラスの解決策はありますか
前もって感謝します
シンビアンにハッシュマップを実装したい
2つの値を取ります
それを実装した団体はありますか
クラスRHashMap、RHashTableがありますが、記述子と値を渡したいです
また
他に、これに対する他のクラスの解決策はありますか
前もって感謝します
ドキュメントには、整数と記述子を含むクラスが必要であるという事実が明確になっていないと思います。
実装する必要のあるTHashFunction32は、クラスの1つのインスタンスを受け取り、その整数メンバーを返します。
実装する必要のあるTIdentityRelationは、クラスの2つのインスタンスを取得し、整数メンバーを比較します。
クラスのインスタンスをRHashMapに挿入する場合、整数メンバーと記述子メンバーの両方が意味のある値を持つ必要があります。
RHashMapから記述子を取得する場合は、クラスのインスタンスを作成しますが、整数のメンバー値のみを設定します。そのオブジェクトをRHashMap::Find()のパラメーターとして使用すると、探していた記述子を含むクラスのインスタンスが返されます。
RHashMap はテンプレート型です。次のように、必要なクラスを使用できます。
RhashMap<TInt,TPtr> map;
map.Insert(myInt,myDes);
...
myDes = map.FindL(myInt);
TInt error = map.Remove(myInt);
User::LeaveIfError(error);
map.Close();
編集: 1 つのキーで 2 つのものを指すようにしたい場合は、これら 2 つのものを 1 つのオブジェクトにカプセル化するだけです。