Hashtable implementation for Symbian
Having been unable to find a hashtable implementation for Symbian environments, I ended up reinventing the wheel a bit and wrote my own. The API somewhat resembles that of java.util.Hashtable, and only implements the "mandatory" functions (put, get, remove, rehash). It is implemented as a set of templated classes. All of the code is attached, please find a summary of the API (with comments stripped) below:
static CHashTable* NewL( TInt aInitialTableSize = KDefaultTableSize,
TReal aRehashRatio = KDefaultRehashRatio );
static CHashTable* NewLC( TInt aInitialTableSize = KDefaultTableSize,
TReal aRehashRatio = KDefaultRehashRatio );
virtual ~CHashTable();
public: // New methods
void PutL( const TDesC& aKey, T* aObj );
const T* GetL( const TDesC& aKey ) const;
TBool Remove( const TDesC& aKey );
void ResetTable();
void RehashL();
CEntryIterator<T>* EntriesLC() const;
TReal LoadFactor();
TInt NumEntries() const;






Hashtable implementation for Symbian
Symbian as of 9.1 supplies RHashMap RHashSet and THashIterator classes which provide time efficient associative arrays. A search on google takes you to the UIQ docs for these. It's worth bearing in mind that thought present in binary form the s60 3rd edition, early versions did not include the headerfile.
Read more about how to get a copy of the headerfile in the attached link
Hashtable implementation for Symbian
Actually there IS a hash table in Symbian 9.1 and later.
http://developer.uiq.com/devlib/uiq_30/SDKDocumentation/sdl/reference/reference-cpp/N101D6/RHashMapClass.html
Hashtable implementation for Symbian