An abstract dictionary container
![]() | Construction |
![]() | Overrides from class PObject |
![]() | Overrides from class PCollection |
![]() | New functions for class |
Overrides from class PContainer
Common functions for collections
Common functions for containers
Run Time Type functions
Comparison functions
I/O functions
Miscellaneous functions
An abstract dictionary container
Note that by default, objects placed into the dictionary will be deleted when removed or when all references to the dictionary are destroyed.
The default behaviour is to print the class name.
Note that that will require value comparisons to be made to find the
equivalent entry and then a final check is made with the pointers to
see if they are the same instance.
virtual PINDEX InsertAt( PINDEX index, PObject * obj )
obj - New object to place into the collection.virtual PObject* RemoveAt( PINDEX index )
virtual BOOL SetAt( PINDEX index, PObject * val )
val - New value to place into the collection.virtual PObject* GetAt( PINDEX index ) const
virtual PINDEX GetObjectsIndex( const PObject * obj ) const
virtual PINDEX GetValuesIndex( const PObject & obj ) const
The ordinal position in the dictionary is determined by the hash values of the keys and the order of insertion.
The object is placed in the an ordinal position dependent on the keys
hash function. Subsequent searches use the has function to speed access
to the data item.
This function is primarily for use by the operator[] function is
descendent template classes.
virtual BOOL AbstractSetAt( const PObject & key, PObject * obj )
obj - New object to put into the dictionary.virtual PObject& GetRefAt( const PObject & key ) const
virtual PObject* AbstractGetAt( const PObject & key ) const
Alphabetic index HTML hierarchy of classes or Java