uthash egy hash C lehetővé tevő struktúrák minden C szerkezetet, amely egyedülálló kulcsmezőt kell Hashelt.
Struktúrákat lehet törölni, hozzáadni vagy eltávolítani a hash állandó időt. A kulcs mező tetszőleges típusú adatokat.
Példa 1. Az elemek egy hash.
#include "uthash.h"
struct my_struct {
int id; / * Gomb * /
char name [10];
UT_hash_handle hh; / * Teszi ezt a struktúrát hashable * /
};
struct my_struct * users = NULL;
void add_user (struct my_struct * s) {
HASH_ADD_INT (felhasználók, id, s); / * Hash, kulcs mező nevét, elem * /
}
Például 2. Miközben a tételt egy hash.
struct my_struct * find_user (int user_id) {
struct my_struct * s;
HASH_FIND_INT (felhasználók, s, id, és user_id);
vissza s;
}
Példa 1. Elem törlése egy hash.
void delete_user (struct my_struct * user) {
HASH_DEL (felhasználó, felhasználó); / * Hash, mutatót deletee * /
}
Mi az új ebben a kiadásban:
- Számos kisebb fejlesztéseken esett át a kiegészítő segédprogramok tartalmazza uthash, beleértve az új lista műveletek (betoldott, cserélje ki, és támogatja a struktúrák, amelyek különböző elnevezési), az új dinamikus szöveg funkciók (KMP töredékszó kereső, format checking), kompatibilitás javítása, és a jobb dokumentációt.
Mi az új verzióban 1.9.4:
- Ez a verzió támogatja MurmurHash v3, új utlist összefűzés makrók, utarray bináris keresés, új utstring funkcionalitás, új dokumentációt, és a hibajavítás.
Mi az új verzióban 1.9.3:
- kijavítani a IFDEF való kompatibilitás Intel compiler (köszönet , degski!)
- fix HASH_ITER makro kielégíteni C ++ casting szabályok (hála, Erik Bai!)
Mi az új a 1.8 verzió:
- Ez a verzió tartalmaz egy új, élő elemzése segédprogram (Linux) lekérdezni a mérete és minősége a hash táblák egy futó folyamat.
- Ide tartoznak azok a támogatást Bloom szűrők ami felgyorsítja hiányzik, újbóli felvételéhez a MurmurHash hash függvény, és a javítások a társa kapcsolt lista feje.
Mi az új a 1.7-es verzió:
- Ez egy karbantartási kiadás. A Murmurhash már nem támogatja, mert ahhoz -fno-szigorú-aliasing, hogy biztonságosan alkalmazható alatt gcc. Szintén kijavították a probléma utlist így betartja a szigorú aliasing szabályt, és úgy viselkedik rendesen alatti O2 és O3.
Mi az új 1.6:
- Version 1.6 uthash magában foglalja az új hash függvények, új HASH_CLEAR és HASH_SELECT műveletek, valamint egy kiegészítő láncolt lista header utlist.h
Milyen új 1.5-ös verzióban:
- Ez a kiadás támogatja szálbiztosak egyidejű olvasók és ad mintegy 13 % -kal gyorsabb HASH_FIND teljesítményét.
Mi az új 1.4-es:
- Ez a kiadás tartalmaz C ++ kompatibilitás, az API megszerzéséhez elem számítanak, nagyobb memória hatásfokát, és tiszta pedáns összeállítása.
Hozzászólás nem található