【发布时间】:2017-11-07 08:56:33
【问题描述】:
我有一个带两个参数的函数,最后一个参数是回调闭包:
func myAsycTask(name: String, callback: @escaping ()->Void) {
myQueue.async{
self.doTask(name)
callback()
}
}
func doTask(name: String) {...}
我想将第二个回调闭包参数设为可选。我试图将上面的函数重新定义为:
func myAsycTask(name: String, callback: @escaping ()->Void? = nil) {
myQueue.async{
self.doTask(name)
callback()
}
}
我得到一个编译器错误:
nil 的默认参数值不能转换为类型'
() ->'
那我怎样才能达到我所需要的呢?
【问题讨论】:
-
好吧answered