-4
在Swift中,如何創建一個既有捕獲列表又有參數的閉包?你可以有一個包含捕獲列表和參數列表的閉包嗎?
我已經使用了以任一種形式呈現的代碼,但不知道如何創建具有參數和捕獲列表的閉包。
例如
關閉與參數表:
myFunction {
(x: Int, y: Int) -> Int in
return x + y
}
關閉與捕獲列表:
myFunction { [weak parent = self.parent] in print(parent!.title) }
實例嘗試與捕獲列表:
class MyTest {
var value:Int = 3
func myFunction(f: (x:Int, y:Int) -> Int) {
print(f(x: self.value, y: 5))
}
func testFunction() {
myFunction {
[weak self] (x, y) in //<--- This won't work, how to specify weak self here?
print(self.value)
return self.value + y
}
}
}
我不知道我瞭解這裏的問題。你有沒有嘗試做一個兼具兩者的封閉? –
是的,想知道這是否可能。我嘗試了幾種不同的方式,無法識別語法。 – Boon
@ 0x7fffffff如果你能看看如何解決downvotes的濫用問題,那將是非常好的。我正在問一個合適的問題,並且已經有兩個投票。 – Boon