Swift 4中的可选闭包

ker*_*nic 3 ios swift swift4

我需要按需执行的关闭方法。

在Swift 3中,我曾经做过这样的事情:

// Declare closure
var checksPerformed: ((Void) -> Void)? // Declaration

// Call when needed
checksPerformed?() 

//Only executes when checksPerformed is called
checksPerformed = { _ in 
    // do stuff here
}
Run Code Online (Sandbox Code Playgroud)

在Swift 4中,情况不再如此。

在此处输入图片说明

修复此警告后,没有任何反应。这样做的新方法是什么?

如果我将声明更新为:var checksPerformed: (() -> ())?我正在

在此处输入图片说明

Naz*_*san 5

区分单元组和多参数函数类型

// Declare closure
var checksPerformed: (() -> ())? // Declaration

// Call when needed
checksPerformed?()

//Only executes when checksPerformed is called
checksPerformed = {
    // do stuff here
}
Run Code Online (Sandbox Code Playgroud)