在 C++ 语言中,std::hash<T>对于最简单的类型,如std::string、int等,有默认的哈希函数模板。我想,这些函数具有良好的熵,并且相应的随机变量分布在统计上是均匀的。如果不是,那么让我们假装它是。
然后,我有一个结构:
struct CustomType {
  int field1;
  short field2;
  string field3;
  // ...
};
我想对它进行散列,使用其中一些字段的单独散列,比如std::hash(field1)和std::hash(field2). 两个哈希都在 type 的一组可能值中size_t。
什么是一个好的散列函数,它可以结合这两个结果并将它们映射回size_t?