1
我想使用泛型執行快速執行請求函數。我想打電話,並根據我返回的結果切換枚舉結果。然而,我不明白:'不能用類型參數列表(NSURLRequest,(Result < __>) - >())'調用performRequest爲什麼我不能在這裏有一個未命名的參數?我也嘗試了類似以下內容:r < MyStruct> ---但我然後得到預期的表達式錯誤。任何幫助解釋上述結果< _>錯誤將不勝感激。謝謝。泛型執行請求,使用泛型
enum Result<A> {
case Value
case Error
}
func performRequest<A>(request:NSURLRequest, callback:(Result<A>) ->()) {
let task = NSURLSession.sharedSession().dataTaskWithRequest(request) { (data, response, error) -> Void in
callback(parseResponse(data, response: response, error: error))
}
task.resume()
}
class SampleClass {
let request = NSURLRequest(URL: NSURL(string: "www.google.com")!)
init() {
performRequest(request) { r in -------- errors out
switch r {
case .Value:
case .Error:
}
}
}
'parseResponse'的簽名是什麼? –