Tie::SubstrHash - 固定表格大小、固定金鑰長度雜湊
require Tie::SubstrHash;
tie %myhash, 'Tie::SubstrHash', $key_len, $value_len, $table_size;
Tie::SubstrHash 套件提供雜湊表介面,可使用固定大小的陣列,並具有固定的金鑰大小和記錄大小。
將新的雜湊連結到此套件時,開發人員必須指定將使用的金鑰大小、金鑰將索引的值欄位大小,以及整體表格的大小(以金鑰值對表示,而非硬碟記憶體大小)。這些值在連結雜湊的期間內不會變更。新配置的雜湊表現在可以儲存和擷取資料。嘗試儲存超過 $table_size
個元素會導致致命錯誤,嘗試儲存值長度不完全等於 $value_len
個字元,或透過長度不完全等於 $key_len
個字元的金鑰參照,也會導致致命錯誤。雖然這些限制看似過多,但結果是雜湊表使用的內部記憶體比等效的自由配置雜湊表少很多。
由於目前的實作使用表格和金鑰大小作為雜湊演算法,因此無法動態變更任何初始化參數的值。
雜湊不支援 exists()。