same code, different order if tie exists in priority_queue, using clang and gcc
本问题已经有最佳答案,请猛点这里访问。
聪明人
我的问题是这样的:
我需要使用 std 中的 priority_queue,一切正常,直到我的记录之间存在联系,如果我使用 clang 编译与在 gcc 上编译相比,顺序不再一致。
我的比较器功能很简单:
1 2 3 | bool comparator(const max_pair_t &lhs, const max_pair_t &rhs) { return lhs.pval < rhs.pval; } |
就是这样。
有没有办法解决这个问题?
PS:我用两个二进制可执行文件打印出所有的记录,并排比较顺序,顺序不同,但是绑定的记录在相邻区域