【问题标题】:tr1::hash for uint64_ttr1::hash 为 uint64_t
【发布时间】:2012-10-03 19:31:10
【问题描述】:

我正在尝试散列一个 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&)’

为什么这不起作用?

【问题讨论】:

    标签: c++ linux tr1


    【解决方案1】:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-05-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-13
      • 1970-01-01
      • 1970-01-01
      • 2017-06-28
      相关资源
      最近更新 更多