标签: swift protocols
序列协议
是Swift协议,因此需要所有方法。
看看它的声明,我现在已经看到有很多方法,比如
makeIterator(), map(), filter()
依旧......
我想知道仅
makeIterator()
方法是必需的。
它不是带有可选关键字的 @objc 协议,它不是协议的扩展,它不符合任何其他协议。这是一个简单的Swift协议。
有什么想法吗?
答案 0 :(得分:1)
关于这个问题,Hamish为我们提供了正确的解决方案
它不是协议的扩展“ - 不,序列确实提供默认值 其余要求的实现,例如map的默认值 实现是here,过滤器的默认实现是here。注意 当makeIterator()时还有一个默认的实现 sequence是它自己的迭代器。
我们可以找到makeIterator()默认实施here
makeIterator()
非常感谢!