C++ 使用gperf生成的完美散列函数安全吗?

C++ 使用gperf生成的完美散列函数安全吗?,c++,linux,open-source,64-bit,gnu,C++,Linux,Open Source,64 Bit,Gnu,我现在正在考虑使用gperf生成的哈希函数来替换我们以前的哈希函数,但我不知道它是否安全,这会增加我们的维护成本 可靠性和系统复杂性是我们首先考虑的问题 是否有人在大型项目中使用过gperf生成的哈希函数 在我的项目中使用它安全吗

我现在正在考虑使用gperf生成的哈希函数来替换我们以前的哈希函数,但我不知道它是否安全,这会增加我们的维护成本

可靠性和系统复杂性是我们首先考虑的问题

是否有人在大型项目中使用过gperf生成的哈希函数

在我的项目中使用它安全吗

提前谢谢

我自己从未使用过API,但是, 在上世纪90年代末的一篇文章中,他们展示了GPERF已经被应用于、gnu缩进和其他一些应用程序中

这已经有一段时间了,而且很可能会彻底改变。
一个有趣的开发者在写东西

我自己从未使用过API,但是, 在上世纪90年代末的一篇文章中,他们展示了GPERF已经被应用于、gnu缩进和其他一些应用程序中

这已经有一段时间了,而且很可能会彻底改变。
一个有趣的开发者在写东西

众所周知,gperf工作得很好。到目前为止,是的,它是“安全的”

复杂性通常为读取2个字符、执行2个表查找和一个字符串比较。可靠性为100%。如果出现错误,您将收到错误消息,否则它将正常工作

维护成本介于“低”和“不存在”之间,您需要弄清楚如何编写一次输入文件,然后通过gperf运行一次,并编译它。这是一个简单的C代码,每个10-20岁的编译器都能读懂。只要想查找一个值,就调用lookup函数,这就是所要做的


如果您更改输入文件,则需要通过gperf再次运行该文件,显然。。。否则就这样了。如果您的密钥列表没有更改,则无需再次执行任何操作。我在几个项目中使用了gperf,非常满意。

众所周知,gperf工作得非常好。到目前为止,是的,它是“安全的”

复杂性通常为读取2个字符、执行2个表查找和一个字符串比较。可靠性为100%。如果出现错误,您将收到错误消息,否则它将正常工作

维护成本介于“低”和“不存在”之间,您需要弄清楚如何编写一次输入文件,然后通过gperf运行一次,并编译它。这是一个简单的C代码,每个10-20岁的编译器都能读懂。只要想查找一个值,就调用lookup函数,这就是所要做的

如果您更改输入文件,则需要通过gperf再次运行该文件,显然。。。否则就这样了。如果您的密钥列表没有更改,则无需再次执行任何操作。我已经在几个项目中使用了gperf,非常满意