我需要将两个 int 值组合为键并将与之关联的对象存储到哈希存储中。
我考虑这样做的一种方法是:
unsigned long nodeId = 1;
unsigned long suffixId = 20;
unsigned long long uniqueEdgeKey = (unsigned long long) nodeId << 32;
uniqueEdgeKey |= suffixId;
但是有没有更好的 C++/C++11 方法来做到这一点?
另外,从性能的角度来看,您建议使用什么作为此键的哈希存储,并将其关联的对象实例作为值?
编辑:忘了提到,由于某种原因,我很遗憾不能使用 Boost。它只需要使用 std 来完成。