Salut!
J'ai un std::vector de std::unique_ptr et je souhaiterai effacer un std::unique_ptr de mon std::vector avec la méthode erase et donc faire quelque chose comme ceci :
Mais je ne sais pas du tout comment m'y prendre, j'ai essayé de mettre mon pointeur nu dans un std;;unique_ptr mais ça ne compile pas et en plus le pointeur ne peut avoir qu'un seul propriétaire donc je ne peut pas l'affecter à deux std::unique_ptr.
Code cpp : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 void removeChild (LightComponent* child) { for (auto it = children.begin(); it != children.end();) { if (it->get() == child) { it = children.erase(child); } else { it++; } } }
Partager