This example application demonstrates some uses of the Hash Table APIs of the User Library component
Hash table is used to construct the following:
The example also demonstrates performing different operations on these hash sets/maps, such as, inserting, finding, iterating, and removing items. A set implements an unordered extensional set of objects and a map implements an associative array with key and value type using probe sequence hash table.
The overview contains the following sections:
Click on the following link to download the example: HashTableExample.zip
Click: browse to view the example code.
The application constructs a hash set by using the default
hash and identity function for integers and descriptors using the RHashSet
template class, and constructs another hash set
by providing a defined custom hash and identity functions.
The application applies the following operations to the hash set:
Inserting items
using the RHashSet::Insert()
function
Finding items
using the RHashSet::Find()
function
Iterating items
using the RHashSet::TIter
class
Removing items
using the RHashSet::Remove()
function
Related APIs
RHashSet::TIter
- A class which allows iteration
over the elements of a RHashSet
class.
The application constructs a hash set of
pointers using the default hash and identity function for integers
and descriptors using the RPtrHashSet
template class,
and constructs another hash set of pointers by providing a defined
custom hash and identity functions.
The application applies the following operations to the hash set of pointers:
Inserting items
using the RPtrHashSet::Insert()
function
Finding items
using the RPtrHashSet::Find()
function
Iterating items
using the RPtrHashSet::TIter
class
Removing items
using the RPtrHashSet::Remove()
function
Related APIs
RPtrHashSet::TIter
- A class which allows
iteration over the elements of a RPtrHashSet
class
The application constructs a hash map using the default
hash and identity function for integers and descriptors using the RHashMap
template class, and constructs another hash map
by providing a defined custom hash and identity functions.
The application applies the following operations to the hash map:
Inserting items
using the RHashMap::Insert()
function
Finding items
using the RHashMap::Find()
function
Iterating items
using the RHashMap::TIter
class
Removing items
using the RHashMap::Remove()
function
RHashMap::TIter
- A class which allows
iteration over the elements of a RHashMap
class.
The application constructs a hash map of pointers
using the default hash and identity function for integers and descriptors
using the RPtrHashMap
template class, and constructs
another hash map of pointers by providing a defined custom hash and
identity functions.
The application applies the following operations to the hash map of pointers:
Inserting items
using the RPtrHashMap::Insert()
function
Finding items
using the RPtrHashMap::Find()
function
Iterating items
using the RPtrHashMap::TIter
class
Removing items
using the RPtrHashMap::Remove()
function
Related APIs
RPtrHashMap::TIter
- A class which allows
iteration over the elements of a RPtrHashMap
class.
DefaultHash
- A set of common hashing functions
for frequently occurring types.
DefaultIdentity
- A set of common identity
relations for frequently occurring types.
THashFunctions32
The Symbian build process describes how to build an application.
The HashTableExample builds an executable called hashtableexample.exe
in the standard location (\epoc32\release\winscw\<build_variant>
for CodeWarrior). After launching the executable, depending on the
emulator you are using, you may need to navigate away from the application
launcher/shell screen to view the console.