我必须找出我的是否有双打,如果有双打list<SnakeParts>
则设置为 false
我尝试了 the 的unique()
功能list
并将 an 添加operator==()
到我的课程中。现在,当我执行独特的功能时,我不会过滤掉双打。经过一些调试后,我发现==
比较器的执行次数与列表中的对象一样多,我使用了以下代码:
list<SnakePart> uniquelist = m_snakeParts;
uniquelist.unique();
if (m_snakeParts.size() != uniquelist.size()){
alive = false;
}
操作员:
bool SnakePart::operator==(const SnakePart& snakePart) const{
return (x == snakePart.x && y == snakePart.y );
}
但这不起作用。那么我做错了什么,还是有另一种方法可以做到这一点?