struct player
{
string name;
int a;
int v;
int s;
bool operator< (const player lhs, const player rhs)
{
if ((lhs.a < rhs.a)
|| ((lhs.a == rhs.a) && (lhs.v < rhs.v))
|| ((lhs.a == rhs.a) && (lhs.v == rhs.v) && (lhs.s > rhs.s))
|| ((lhs.a == rhs.a) && (lhs.v == rhs.v) && (lhs.s == rhs.s) && (lhs.name < rhs.name))
)
return true;
else
return false;
}
};
我有这个结构体,我希望为小于运算符<实现运算符重载,但是我一直得到错误“此运算符函数的参数太多”。 有人可以帮我解决这个问题吗?