boost::hash_combine

来源:互联网 发布:詹姆斯季后赛数据统计 编辑:程序博客网 时间:2024/06/03 22:39

inline std::size_t hash_result_combine(std::size_t lhs, std::size_t rhs)

{

        return lhs ^ (rhs + 0x9e3779b9 + (lhs << 6) + (lhs >> 2));
}


struct PairHash {
        template <typename T, typename U>
        std::size_t operator()(const std::pair<T, U> &x) const
        {
                return hash_result_combine(hash<T>()(x.first), std::hash<U>()(x.second));
        }

};


0 0
原创粉丝点击