我正在尝试像这样在 swift 3 中为闭包定义类型别名:
public typealias URLRequestClosure = (response: URLResponse?, data: Data?, error: Error?) -> Void
我得到一个错误,我应该在参数名称前加上下划线。 IE:
public typealias URLRequestClosure = (_ response: URLResponse?, _ data: Data?, _ error: Error?) -> Void
谁能解释我为什么?这与 Swift 3 有关吗?
非常感谢
最佳答案
您不能在闭包类型别名中指定参数名称。所以不是:
public typealias URLRequestClosure = (response: URLResponse?, data: Data?, error: Error?) -> Void
你应该使用:
public typealias URLRequestClosure = (URLResponse?, Data?, Error?) -> Void
关于ios - 在 Swift 3 中为闭包定义类型别名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40183806/