我遇到了一个小问题:我有一个包含结构的 unordered_set。我已经实现了哈希函数。但是当我第一次编译我的程序时,我得到了一些编译器错误,说我没有实现重载的“operator==”。
问题是当我声明我的重载时:
bool operator==(mapPoint const& p1, mapPoint const& p2){
return p1.x == p2.x && p1.y == p2.y;
}
我有一些链接器错误。在包含标头的每个文件中,我都收到错误消息(复制符号 __XXXX_mapPointS1_)。
事实是当它被放入实现文件时它工作正常,我在其中将它与 unordered_set 一起使用。
我的问题是,我该如何解决这个问题?除了编译器之外,还有很多我无法理解的魔法。汉克斯