C++ 0x добавляет hash<...>(...)
.
Я не мог найти a hash_combine
функционируйте хотя, как представлено в повышении. Что самый чистый путь состоит в том, чтобы реализовать что-то вроде этого? Возможно, использование C++ 0x xor_combine
?
Что ж, просто делайте это так, как это делали ребята из наддува:
template <class T>
inline void hash_combine(std::size_t& seed, const T& v)
{
std::hash<T> hasher;
seed ^= hasher(v) + 0x9e3779b9 + (seed<<6) + (seed>>2);
}