Maison >développement back-end >C++ >Pourquoi les éléments de ma liste sont-ils écrasés lors de l'ajout de plusieurs objets ?
Problème :
L'ajout de plusieurs éléments à une liste entraîne l'écrasement de tous les éléments de la liste par la valeur du dernier élément ajouté. Cela se produit quelles que soient les valeurs initiales des éléments.
Causes :
Résolution :
La solution consiste à créer une nouvelle instance d'objet pour chaque itération :
<code class="language-csharp">foreach (string t in tagList) { Tag _tag = new Tag(); // New Tag object for each iteration _tag.tagName = t; tags.Add(_tag); }</code>
Alternative : utiliser des structures
Passer d'une classe à une structure élimine le problème d'écrasement car :
Add
opération crée une nouvelle instance de structure, en conservant des valeurs uniques.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!