Buongiorno
scusami se non ti ho risposto ma ieri ero incasinato
Riepilogando
THashTable *ht è una tabella che contiene una serie di valori (tra cui hash) e come indicie ha una coppia di chiavi , ipotiziamo che al suo interno ci sono solo le seguenti coppie di chiavi : 10:10 - 16:16 - 14:14 - 11:14 - 23:25 - 13:12
TList listkey è una lista che contiene le chiavi che voglio eliminare dalla tabella THashTable* ht, ipotiziamo che contenga solo le seguenti chiavi : 10:10 - 16:16 - 14:14 - 23:25
THashTable *ht = 10:10 - 16:16 - 14:14 - 11:14 - 23:25 - 13:12
TList listkey = 10:10 - 16:16 - 14:14 - 23:25
(quelli in rosso sono quelli eliminati)
alla fine della funzione avro' la tabella THashTable *ht che conterrà solo le righe rimanenti le cui chiavi sono 11:14 e 13:12
Hai provato il codice che ti ho postato ?
mi scrivi anche il corpo delle funzioni
hashtable_search
hashtable_delete
(se è possibile posta tutto il codice, facciamo prima)
29/12/2023 - mario_243 ha scritto:
Non è una lista ma tabella hash e non sarà vuota perché già contiene alla base altri valori vanno eliminati le chiavi della lista TList list Key e rimangono solo i valori all inizio prima che li avessimo aggiunti nella tabella hash
sostituisci il return con un funzione tipo listkey.clear() , “se esiste” se non esiste implementala dentro l'oggetto TList
Attenzione la lista delle chiavi da eliminare TList listkey non è un puntatore come gli altri parametri ma un oggetto.