我從雨燕GeneratorType
文檔看this language,我有一個很難理解它:什麼是Swift中的多遍序列?
,超過單個序列使用多臺發電機(或... in循環)的任何代碼應該有由於其具體類型是已知的或者因爲它受限於CollectionType,所以特定序列是多遍的靜態知識。此外,必須通過對序列的generate()方法的不同調用來獲取生成器,而不是通過複製。
這是什麼意思序列是「多通」?這種語言看起來很重要,但我找不到一個好的解釋。我明白,例如,「多通編譯器」的概念,但我不確定這些概念是相似還是相關...
另外,我搜索了其他帖子回答這個問題。我發現this one,這使得下面的語句在C++方面:
複製了他們的迭代器和那些沒有算法之間的區別是,前者被稱爲「多通道」算法,並要求其迭代器類型以滿足ForwardIterator,而後者是單通道且只需要InputIterator。
但是我的意思並不完全清楚,我不確定這個概念在Swift中是否一樣。
從那些比我更聰明的任何洞察力將不勝感激。
謝謝......我想我很難看出一個* not * multipass序列。什麼是一個序列的例子,你只能迭代一次?什麼會阻止你從一開始就重新開始? – 2015-01-21 01:28:14
也許這是從網絡接收到的令牌流?所有它必須是每個新項目是從一個非確定性的方式生成的前一個... – nielsbot 2015-01-21 03:44:32
再次感謝。我沒有想過流是一個序列,這對我有很大的幫助。 – 2015-01-22 23:18:04