使用unordered_map时,key值放pair

阅读 80

2022-03-24

struct pairHash {

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

};

unordered_map<std::pair<int,int>, int, pairHash> canBeRun;

如代码所示,重载一个函数就可以了,这样有可能会出现hash冲撞,但是概率小到离谱就是了。

精彩评论(0)

0 0 举报