[Vector] Copie des éléments lors d'un push_back() ?
Bonjour,
J'ai un objet Data qui est relativement gros, et dans une méthode je le modifie puis le stocke dans un vector.
Mais il se passe quelque chose qui me parait bizarre : lorsque je fais
Code:
mon_vector.push_back(mon_data);
Il fait un nombre de copies variables de mon objet. J'ai affiché quelque chose dans le constructeur de copie, et je remarque qu'il fait 1, puis 2, puis 3, puis 1, puis 5, puis parfois même 10 appels à ce constructeur juste lorsqu'il fait push_back.
Comme mon objet est gros, ça ralentit beaucoup l'exécution, j'aimerai comprendre ce qui se passe et pouvoir l'éviter. Je pensais qu'il n'en ferait qu'une seule copie !
Merci d'avance !