Maison > Article > développement back-end > Est-ce que `std::vector` copie les objets lors de l'utilisation de `push_back()` ?
Est-ce que std::vector copie des objets lors de l'ajout à l'aide de push_back ?
Après une enquête méticuleuse à l'aide de Valgrind, certains utilisateurs sont parvenus à la conclusion que std ::vector crée des copies des objets poussés dans le conteneur à l'aide de la méthode push_back(). Cela a soulevé des questions sur la capacité du vecteur à contenir des références ou des pointeurs sans faire de copies.
std::vector Behavior
L'hypothèse est correcte. Lorsqu'un objet est push_back() dans un std::vector
Alternatives pour stocker des références ou Pointeurs
Si vous avez l'intention de stocker des références ou des pointeurs vers des objets dans votre vecteur, la solution est d'utiliser un std::vector
Maintenir la validité des objets
Lors de l'utilisation d'un std::vector
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!