Je sais qu'il existe des questions similaires à celle-ci, mais je n'ai pas réussi à trouver le chemin sur mon code grâce à leur aide. Je veux simplement supprimer/supprimer un élément d'un vecteur en vérifiant un attribut de cet élément à l'intérieur d'une boucle. Comment puis-je faire cela ? J'ai essayé le code suivant mais je reçois le vague message d'erreur :
La fonction 'operator =' n'est pas disponible dans 'Player'.
for (vector<Player>::iterator it = allPlayers.begin(); it != allPlayers.end(); it++)
{
if(it->getpMoney()<=0)
it = allPlayers.erase(it);
else
++it;
}
Que dois-je faire ?
Mise à jour : Pensez-vous que la question vector::erase avec membre pointeur concerne le même problème ? Ai-je donc besoin d'un opérateur d'affectation ? Pourquoi ?