Il existe une collection typique de certains objets de classe, par exemple string
pour une simplicité
IList collection = new List();
Pendant le déroulement du programme, certaines fonctions doivent opérer sur la collection, traiter les objets de classe et, en fonction du résultat de l'opération, supprimer l'objet de classe traité de la collection.
Par exemple, dans l'exemple suivant avec des chaînes, si la chaîne est "failed", alors supprimez cet élément
foreach (string str in collection)
{
// opérer sur l'objet de classe actuel
// si str n'est pas valide
if (str == "failed")
collection.Remove(str);
}
De toutes les manières, cela entraîne une exception. Quel est le meilleur moyen de parcourir tous les éléments en ayant la capacité de les supprimer pendant l'énumération?