1
在C#中使用Iterators創建Enumerable或Enumerator之間的區別是什麼? 我知道迭代器用於創建一個實現Enumerable或Enumerator的私有類...在C#中使用迭代器創建Enumerable或Enumerator之間的區別
哪種方式更好地創建枚舉類型?
在C#中使用Iterators創建Enumerable或Enumerator之間的區別是什麼? 我知道迭代器用於創建一個實現Enumerable或Enumerator的私有類...在C#中使用迭代器創建Enumerable或Enumerator之間的區別
哪種方式更好地創建枚舉類型?
實現IEnumerable
接口的每種類型都應該實現一個方法GetEnumerator
,該方法返回一個實現接口IEnumerator
的類型。然後使用枚舉器,您可以使用foreach
語句,該語句本質上實現iterator
模式,以遍歷您的自定義類型集合的元素。
爲了進一步澄清,請看看以下幾個環節:
因此,爲了回答你的問題,我不得不說我們不應該試圖比較IEnumerable
和IEnumerator
。當我們想爲自定義類型使用迭代器模式時,它們都被一起使用。
你可能指的是迭代器塊。你應該閱讀:http://csharpindepth.com/articles/chapter6/iteratorblockimplementation.aspx – Henrik