Raj*_*ana 4 generics xcode ios swift swift3
调用函数时出错。
func hitService<T : Codable>(urlS: String , completion : @escaping (T) -> Void) {
guard let url = URL(string: urlS) else {return}
let session = URLSession.shared
let _ = session.dataTask(with: url) { dt, resp, err in
let decoder = JSONDecoder()
if let d = dt {
do {
let obj = try decoder.decode(T.self, from: d)
completion(obj)
} catch {print(error.localizedDescription)}
}
}.resume()
}
Run Code Online (Sandbox Code Playgroud)
调用这样的函数并出现错误。我也尝试过在 <> 内传递数据类型。
hitService(urlS: urlStr) { b in
}
Run Code Online (Sandbox Code Playgroud)
泛型函数依赖于您在调用它时指定类型,以便它可以推断它使用的类型。
在这种情况下,您需要提供闭包参数的类型,b即
hitService(urlS: urlStr) { (b: MyType) in
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2701 次 |
| 最近记录: |