Кирешелүү үзгүлтүккө байланыштуу билдирүүнү качан колдонот элеңиз?
Кирешелүү үзгүлтүккө байланыштуу билдирүүнү качан колдонот элеңиз?

Video: Кирешелүү үзгүлтүккө байланыштуу билдирүүнү качан колдонот элеңиз?

Video: Кирешелүү үзгүлтүккө байланыштуу билдирүүнү качан колдонот элеңиз?
Video: Титаниктин сыры: кантип алар айсбергди байкабай калышты?! Эң деталдуу окуя! 2024, Апрель
Anonim

#561 – Колдонуу а түшүмдүүлүк жөнүндө билдирүү

Итераторду ишке ашырууда түшүм кайтуу билдирүү кайтарылып жаткан ырааттуулуктагы кийинки элементти кайтарат. Эгерде сиз колдонуп жатасыз а цикл итератор блогунун ичинде, үзүү үчүн түшүмдүү үзүү билдирүүсүн колдоно аласыз ичинен цикл , башка элементтер жок экенин көрсөтүп турат болуп саналат кайтарылып берилсин.

Ошо сыяктуу эле, түшүмдүүлүк деген эмне?

Ал итератор аяктаганын көрсөтөт. сен болот ойлонуп көр түшүмдүүлүк тыныгуу кайтаруу билдирүүсү катары кылат маани бербейт. Мисалы, эгер сиз функцияны итератор катары аныктасаңыз, функциянын денеси мындай көрүнүшү мүмкүн: Бул учурда акыркы оператор эч качан аткарылбайт, анткени биз функциядан эрте чыгып кеткенбиз.

Андан тышкары, кирешелүүлүк жөнүндө билдирүү эмнени көрсөтөт? The түшүм ачкыч сөз ыңгайлаштырылган жана штаттык итерацияны аткарат жана кайтып келет коллекциянын ар бир элементи бирден-бир убактылуу коллекцияларды түзүү зарылдыгын жок кылат. колдоно аласыз түшүм үчүн ачкыч сөз көрсөтүү ал колдонулган ыкма же get аксессуары итератор болуп саналат.

Мындан тышкары, түшүмдүүлүк кантип иштейт?

Сиз а кирешелүүлүк билдирүүсүнө кайтуу ар бир элемент бир убакта. Качан кирешелүүлүк билдирүүгө итератордук ыкмада жетишилет, туюнтма болуп саналат кайтып келди , жана коддогу учурдагы жайгашкан жери сакталат. Итератор функциясы кийинки жолу чакырылганда аткаруу ошол жерден кайра башталат.

yield ачкыч сөзү эмне үчүн колдонулат?

MSDNден цитата Итератор блогунда киреше ачкыч сөз кайтаруу менен бирге колдонулат ачкыч сөз эсептегич объектисине маани берүү. Бул, мисалы, foreach операторунун ар бир циклинде кайтарылган маани. The киреше ачкыч сөз ошондой эле итерациянын аякташын белгилөө үчүн үзгүлтүксүз колдонулат."

Сунушталууда: