Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 17820|Odpověď: 0

[Zdroj] Je třeba implementovat typ rozhraní nebo metody, kterou lze pomocí foreach projít.

[Kopírovat odkaz]
Zveřejněno 26.09.2015 10:37:46 | | |
Odpověď: Objekty, které může foreach procházet, musí být objekty kolekce nebo pole, které jsou typu, který implementuje superrozhraní IEnumerator nebo deklarovanou metodu GetEnumerator
Q:
Ale když obvykle používám foreach in, používám ho přímo a není s tím problém. Mohu se zeptat, proč tomu tak je? Pokud chcete implementovat typ super rozhraní IEnumerator nebo deklarované metody GetEnumerator, jak je položeno v otázce, co byste měli udělat? Děkuju
Odpověď: Při použití foreach in obvykle používáme systémově definovanou třídu kolekcí (implementující ICollection rozhraní). Například arrayList, stringDictionary, array atd. Tyto jsou balíčkovány platformou a jsou blízko implementaci rozhraní IEnumerator. Aby třída, kterou píšete, mohla probíhat současně, musíte při psaní této třídy implementovat toto rozhraní. To umožňuje následné přecházení po dalším kroku. Například definujte třídu osob a implementujte rozhraní IEnumerator. Pokud existuje pole People[] tempPeople, můžete použít: foreach( p in tempPeople){ console.writeline(p.name); Tím se eliminuje problém s používáním smyček for (smyček). Co se týče implementace rozhraní Iemumeratoru. Stačí se podívat na MSDN. Můžete také hledat silnější knihu.





Předchozí:Otázky v algoritmu pohovoru 1, 1, 2, 3, 5, 8, 13, 21, 34...... zjistěte, co je 30. číslice, a použijte rekurzivní algoritmus k zjištění
Další:Jaký je původ temných mraků, které se objevily v Ctripu a dalších únikech?
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com