Если то, что вы хотите сделать, это «// проверить, что итераторы X и Y равны destX и destY», то вы сделали его более сложным, чем нужно.
while(iter != this->playerVector.end())
{
if(iter->myX == destX && iter->myY == destY) {
cout << "found destX/Y at " << iter << endl;
break;
}
iter++;
}
- редактировать -
также знает, что когда вы пишете такие логические выражения, как x || y ^ z && a & b...
, вы также должны учитывать приоритет оператора , хотя в этом случае, я думаю, единственная проблема, которую они вызывают, - сделать ее нечитаемой.