0

问题真的很简单。这会导致分段错误:

extension Sequence {

    func parallelForEach<T, R>(_ f: @escaping (T) -> R, completion: @escaping ([R]) -> ()) where Iterator.Element == T {
    }

}

显然我不知道如何编写协议扩展了。有人帮忙吗?:)

4

1 回答 1

0

错误是我认为我需要泛型类型 T。因为它只是 Iterator.Element,它很高兴是 Sequence 协议中的一种类型。

extension Sequence {

    func parallelForEach<T, R>(_ f: @escaping (Iterator.Element) -> R, completion: @escaping ([R]) -> ()) {
    }

}

感谢任何可以解释为什么编译器不喜欢它的人。这显然效率低下,但为什么会出错呢?

于 2016-12-18T14:25:49.830 回答