Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 17820|Odpowiedź: 0

[Źródło] Należy wdrożyć typ interfejsu lub metody, którą można poruszać za pomocą foreach.

[Skopiuj link]
Opublikowano 26.09.2015 10:37:46 | | |
Odpowiedź: Obiekty, które mogą być przechodzine przez foreach, muszą być obiektami zbiorowymi lub tablicowymi, które są typem implementującym superinterfejs IEnumerator lub deklarowaną metodę GetEnumerator
Q:
Ale kiedy zwykle używam foreach in, używam go bezpośrednio i nie ma problemu. Czy mogę zapytać, dlaczego tak jest? Jeśli chcesz zaimplementować typ superinterfejsu IEnumerator lub zadeklarowanej metody GetEnumerator, jak pytasz, co powinieneś zrobić? Dziękuję
Odpowiedź: Używając foreach in, zazwyczaj używamy systemowo definiowanej klasy kolekcji (implementującej interfejs ICollection). Na przykład: arrayList, stringDictionary, array itd. Są one pakowane przez platformę i są bliskie implementacji interfejsu IEnumerator. Aby klasa, którą piszesz, mogła działać jednocześnie w tym samym czasie, musisz zaimplementować interfejs podczas pisania klasy. Pozwala to na późniejsze przemieszczanie się po nich. Na przykład zdefiniuj klasę osób i zaimplementuj interfejs IEnumeratora. Jeśli istnieje tablica People[] tempPeople, możesz użyć: foreach( p in tempPeople){ console.writeline(p.name); Eliminuje to problem z używaniem pętli for. Jeśli chodzi o implementację interfejsu Iemumeratora. Po prostu sprawdź MSDN. Możesz też poszukać grubszej książki.





Poprzedni:Pytania z algorytmu rozmowy kwalifikacyjnej 1, 1, 2, 3, 5, 8, 13, 21, 34...... sprawdź, jaka jest 30. cyfra i użyj algorytmu rekurencyjnego, aby to sprawdzić
Następny:Skąd pochodzą ciemne chmury, które wydostały się z Ctripa i innych przecieków?
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com