Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 17820|Répondre: 0

[Source] Le type d’interface ou de méthode pouvant être parcouru pour chaque type doit être implémenté.

[Copié le lien]
Publié sur 26/09/2015 10:37:46 | | |
Réponse : Les objets pouvant être parcourus par foreach doivent être des objets collection ou tableaux, du type implémentant le superinterface IEnumerator ou la méthode GetEnumerator déclarée
Q:
Mais quand j’utilise habituellement Foreach In, je l’utilise directement, et il n’y a aucun problème. Puis-je demander, pourquoi cela ? Si vous souhaitez implémenter le type d’interface super IEnumerator ou la méthode GetEnumerator déclarée comme posé dans la question, que devriez-vous faire ? Merci
Réponse : Lors de l’utilisation de foreach in, nous utilisons généralement une classe de collection définie par le système (implémentant l’interface ICollection). Par exemple, arrayList, stringDictionary, array, etc. Ces éléments sont emballés par la plateforme et sont proches de la mise en œuvre de l’interface IEnumerator. Pour que la classe que vous écrivez puisse foreach en même temps, vous devez implémenter l’interface lors de l’écriture de la classe. Cela permet de traverser la perche par la suite. Par exemple, définissez une classe de personnes et implémentez l’interface IEnumerator. S’il existe un tableau People[] tempPeople, alors vous pouvez utiliser : foreach( p in tempPeople){ console.writeline(p.name) ; Cela élimine les difficultés liées à l’utilisation des boucles for. Quant à la façon d’implémenter l’interface Iemumerator. Vérifie simplement la MSDN. Vous pouvez aussi chercher un livre plus épais.





Précédent:Questions d’algorithme d’entretien 1, 1, 2, 3, 5, 8, 13, 21, 34...... découvrez ce qu’est le 30e chiffre, et utilisez un algorithme récursif pour le découvrir
Prochain:Quelle est l’origine des nuages sombres qui ont éclaté de Ctrip et d’autres fuites ?
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com