![](/img/trans.png)
[英]Implementing CollectionType in Swift with forEach giving non Optional closure variable
[英]Swift closure giving function to variable
class ClassA {
var callback : (()->())?
func someAction() {
callback?()
}
}
class ClassB {
func caller() {
let a = ClassA()
a.callback = {
print("hello")
//d do stuff
}
}
}
我想将ClassB回调实现移到单独的函数。 如下
a.callback = somefunc()
但这是不可能的,因为我们要给变量赋值
我不想要
a.callback = { somefunc() }
有没有一种方法可以调用功能?
将()
添加到someFunc
意味着您正在调用该函数,这将求值为someFunc
的返回值,即Void
。
您需要直接引用该函数,而无需调用它。 只需删除()
:
a.callback = someFunc
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.