我真的很想在 SML 中创建一个哈希表,似乎 SML/NJ 中已经有一个结构。
问题是,我该如何使用它?我还没有完全理解如何在SML中使用结构,并且我读过的书中的一些非常基本的示例给了我错误,我什至不知道如何纠正,所以使用HashTable结构可能是一件容易的事情,但是我不知道。如果有人能解释这一点,那就太好了!
我想是这样的:
val ht : string * int HashTable.hash_table = HashTable.mkTable();
???
的签名mkTable
值为:
val mkTable : (('a -> word) * (('a * 'a) -> bool)) -> (int * exn)
-> ('a,'b) hash_table
(* Given a hashing function and an equality predicate, create a new table;
* the int is a size hint and the exception is to be raised by find.
*)
因此,您必须执行以下操作:
val ht : (string, int) HashTable.hash_table =
HashTable.mkTable (HashString.hashString, op=) (42, Fail "not found")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)