序列协议
是一个swift协议,所以所有的方法都是必需的。
看看它的声明,我发现现在有很多方法,比如
makeIterator(), map(), filter()
等等……
我想知道为什么只有
生成迭代器()
方法是必需的。
它不是带有可选关键字的@objc协议,它不是协议的扩展,它不符合任何其他协议。这是一种简单快捷的协议。
知道吗?
最佳答案
关于这个问题,Hamish给出了正确的解决方案
它不是协议的扩展“–不,序列提供默认值
其他需求的实现,例如map的默认
实现为here,过滤器的默认实现为here。注释
还有makeIterator()的默认实现,
序列是它自己的迭代器。
我们可以找到makeIterator()
默认实现here
真的谢谢!
关于swift - 序列的协议(protocol)要求的方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45508841/