Я знаю, что есть похожие вопросы к этому, но мне не удалось найти способ моего кода. Я хочу просто удалить/удалить элемент вектора, проверив атрибут этого элемента внутри цикла. Как я могу это сделать? Я пробовал следующий код, но я получаю неопределенное сообщение об ошибке:
Функция'operator =' недоступна в 'Player.
for (vector<Player>::iterator it = allPlayers.begin(); it != allPlayers.end(); it++)
{
if(it->getpMoney()<=0)
it = allPlayers.erase(it);
else
++it;
}
Что мне делать?
Обновление:. Считаете ли вы, что вопрос vector:: erase с элементом указателя относится к той же проблеме? Нужен ли мне оператор присваивания? Зачем?