Referencia de la plantilla de la Clase DynLhashTable
[Tablas hash]

Mapeo dinámico clave-rango instrumentado mediante una tabla hash con resolución de colisiones por encadenamiento separado. Más...

Herencias LhashTable.

Lista de todos los miembros.

Tipos públicos

typedef DynLhashTable< Key,
Record >::Hash_Fct 
Hash_Fct
 El tipo de función hash.

Métodos públicos

 DynLhashTable (Hash_Fct hash_fct, const size_t &len=DefaultPrime) throw (std::exception, std::bad_alloc)
 Instancia un mapeo hash dinámico con función hash hash_fct y tabla de longitud len. Dispara excepción bad_alloc si no hay memoria para apartar la tabla interna.
Record * insert (const Key &key, const Record &record) throw (std::exception, std::bad_alloc)
 Inserta en el mapeo hash el par (key,record) indizado por la clave key. Retorna un puntero al registro dentro de la tabla. Dispara la excepción bad_alloc si no hay suficiente memoria.
void remove (Record *record)
 Elimina de la tabla el registro record (que debe haber sido obtenido mediante la inserción o búsqueda.
Record * search (const Key &key)
 Busca la clave key y, si se encuentra, entonces retorna un puntero dentro de la tabla al registro asociado. De lo contrario -no se encuentra la clave-, se retorna NULL:.


Descripción detallada

template<typename Key, typename Record, class Cmp = Aleph::equal_to<Key>>
class Aleph::DynLhashTable< Key, Record, Cmp >

El tipo DynLhashTable<Key,Record> instrumenta un mapeo mediante una tabla hash con resolución de colisiones por encadenamiento separado. El tipo exporta observadores para conocer el radio de uso y, eventualmente, reajustar el tamaño de la tabla, de modo que ésta exhiba un mejor desempeño.

Pueden usarse de manera segura punteros a registros dentro de la tabla.

Aparte los métodos tradicionales de inserción y búsqueda, el operador [] funge a la vez como consulta e inserción. La asignación tabla[key]=record se corresponde con una inserción; mientras que cualquier expresión del tipo table[key] que involucre lectura se corresponde con una búsqueda.

Parámetros:
Key el tipo de clave de indización
Record el tipo de rango asociado a las claves.
Cmp clase de comparación entre las claves.

Definición en la línea 78 del archivo tpl_dynLhash.H.


La documentación para esta clase fue generada a partir del siguiente fichero:

Leandro R. León