我正在编写一个解析器(在 C++ 中),我有一个小字符串列表(少于 100 个),其中每个字符串都代表一个有效的解析器标记。我需要将每个这样的已知标签映射到一个枚举值以进行进一步处理。由于所有字符串在编译时都是已知的,因此我一直在研究为此目的使用完美的哈希函数。
我知道用于完美哈希函数生成 sa gperf、mph、cmph的现有工具和算法。然而,所有这些工具/实现都在一些限制性许可(如 GPL、LGPL、MPL)下,而由于我的限制,我正在寻找一些代码,这些代码是在宽松的重用许可(如 MIT 许可)下,最好在C/C++ 或 C#。你知道任何这样的工具或代码吗?