Supprimer un item d'un vector de pointeur d'objet
Bonjour à tous,
J'ai un problème pour appliquer ce que je trouve sur internet par rapport à la suppression d'un élément d'un vector, ici un pointeur vers un objet.
Le but est de supprimer lors de la destruction d'un enfant le pointeur contenu dans un vector membre du parent, je fais quelque chose comme ça :
Code:
1 2
|
this->parent()->liste().erase(std::remove(this->parent()->liste().begin(), this->parent()->liste().end(), [this](Item *item) { return item == this; }), this->parent()->liste().end()); |
L'erreur avec ce code est "no match for 'operator==' (operand types are 'Item*' and 'const Item::remove()::<lambda(Item*)>')"
EDIT: Bon finalement j'ai fait un for et un if pour trouvé mon pointeur plutôt que d'utiliser std::remove.