#ifndef POSTYPE_H
#define POSTYPE_H
struct PosType
{
int row, col;
};
PosType operator+(const PosType p1, const PosType p2) {
PosType p;
p.row = p1.row + p2.row;
p.col = p1.col + p2.col;
return p;
}
bool operator== (const PosType p1, const PosType p2) {
return p1.row == p2.row && p1.col == p2.col;
}
#endif
出问题的代码在这个头文件中定义,因为要使用所以在另一个头文件MAZE.H中包含了该头文件,
运行程序的时候,在main中包含了MAZE.H的头文件,运行后提示错误:
LNK2005 "bool __cdecl operator==(struct PosType,struct PosType)" (??8@YA_NUPosType@@0@Z) 已经在 Maze.obj 中定义 Stageone F:\workspace\Stageone\源.obj
LNK2005 "struct PosType __cdecl operator+(struct PosType,struct PosType)" (??H@YA?AUPosType@@U0@0@Z) 已经在 Maze.obj 中定义 Stageone F:\workspace\Stageone\源.obj
请大大们帮忙看看要怎么修改?