0
我正在努力使泛型變得更加舒適,並且我多次遇到這個問題。我得到一個編譯器錯誤,它告訴我它不能將'type'轉換爲期望的參數類型'_'。我無法理解這個錯誤。我認爲指定一個泛型參數可以讓你傳入任何類型?或者那不是我在做什麼?無法轉換NSURL類型的值?預期的類型_的參數?
infix operator +++ { associativity left }
funC+++<A, B>(a:A?, f:A -> B?) {
if let x = a {
f(x)
}
}
func stringToImage(string:String, completion:(Result<UIImage>) ->()) {
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), {
if let image:UIImage = urlFormat(string) +++ dataFormat +++ imageFormat { --- Cannot convert value of type NSURL? to expected argument of type _?
}
})
}
func urlFormat(s:String) -> NSURL? {
if let url = NSURL(string: s) {
return url
}
return nil
}
func dataFormat(url:NSURL?) -> NSData? {
if let u = url {
if let d = NSData(contentsOfURL: u) {
return d
}
}
return nil
}
func imageFormat(d:NSData?) -> UIImage? {
if let data = d {
if let image = UIImage(data: data) {
return image
}
}
return nil
}
mm我覺得啞巴。謝謝。 – Trace