0
經過一番研究,我一直沒能找到任何具體的確認,但似乎序列協議的Generator關聯類型已被重命名爲迭代器。它是否正確?迭代器協議與發生器vs迭代器在swift中的比較
我無法找到任何關於協議GeneratorType或關聯的類型生成器的快速API參考。我只是看到人們在博客上寫這篇文章。
所以我的問題是生成器和迭代器引用swift中完全相同的概念嗎?
經過一番研究,我一直沒能找到任何具體的確認,但似乎序列協議的Generator關聯類型已被重命名爲迭代器。它是否正確?迭代器協議與發生器vs迭代器在swift中的比較
我無法找到任何關於協議GeneratorType或關聯的類型生成器的快速API參考。我只是看到人們在博客上寫這篇文章。
所以我的問題是生成器和迭代器引用swift中完全相同的概念嗎?
生成器和迭代器指的是Swift中完全相同的概念嗎?
總之,是。
如the evolution proposal爲標準庫的夫特3 'renamification' 表示:
地帶
Type
從協議名稱後綴。在一些特殊情況下,這意味着添加一個Protocol
後綴以避開主要[...]類型名稱的方式。生成器的概念被重命名爲所有API的迭代器。
作爲結果,GeneratorType
協議已被重命名爲IteratorProtocol
。
的SequenceType
協議更名爲Sequence
,和看起來像這樣去:
public protocol SequenceType {
associatedtype Generator : GeneratorType
// ...
func generate() -> Generator
// ...
}
來尋找這樣的:
public protocol Sequence {
associatedtype Iterator : IteratorProtocol
// ...
func makeIterator() -> Iterator
// ...
}
一句話;是。 – Hamish
有點相關:[Swift 3中的NSFastEnumeration](http://stackoverflow.com/q/37829953/2976878)。另請參閱Swift 3的[進化提議](https://github.com/apple/swift-evolution/blob/master/proposals/0006-apply-api-guidelines-to-the-standard-library.md)重新標準庫。 – Hamish
感謝Hamish這兩個鏈接都很有用。有這樣的感覺,就是找不到具體的確認。感謝您的安心。如果您只是以答案的形式發佈信息,我可以接受。 –