tr1::hash for uint64_t

tr1::hash for uint64_t

本文关键字:uint64 for hash tr1      更新时间:2023-10-16

我正在尝试散列一个 64 位整数,

uint64_t temp = ...;
return tr1::hash<uint64_t>(temp);

但是我得到错误,

error: no matching function for call to ‘std::tr1::hash<long long unsigned int>::hash(uint64_t&)’

为什么这不起作用?

>hash是一个。你必须创建一个对象:

return std::tr1::hash<uint64_t>()(temp);
//                            ^^^^