Swift - 从闭包中调用方法,同时省略参数
Swift - Calling method from a closure while omitting arguments
在订阅一个主题时,我正在调用一个方法来接收从主题接收到的值。我在代码中遇到了一种语法,其中该值没有作为参数显式传递,也没有在调用它之前强制该方法使用 self 键盘。
Q1。有人可以阐明这种语法吗?
Q2。这是否意味着对 self 有很强的引用?
.subscribe(onNext: updateNewNumber(from:))
重申一下,主题只是传递一个整数。
Q1:叫做“point-free风格”。这是一种将函数作为变量传递的方法。
如果updateNewNumber(from:)
是一个方法,那么它等同于:
.subscribe(onNext: { self.updateNewNumber(from: [=10=]) })
如果是免费函数,则等同于:
.subscribe(onNext: { updateNewNumber(from: [=11=]) })
Q2:没有强引用方法,但是有强引用self
,如上所示
在订阅一个主题时,我正在调用一个方法来接收从主题接收到的值。我在代码中遇到了一种语法,其中该值没有作为参数显式传递,也没有在调用它之前强制该方法使用 self 键盘。 Q1。有人可以阐明这种语法吗? Q2。这是否意味着对 self 有很强的引用?
.subscribe(onNext: updateNewNumber(from:))
重申一下,主题只是传递一个整数。
Q1:叫做“point-free风格”。这是一种将函数作为变量传递的方法。
如果updateNewNumber(from:)
是一个方法,那么它等同于:
.subscribe(onNext: { self.updateNewNumber(from: [=10=]) })
如果是免费函数,则等同于:
.subscribe(onNext: { updateNewNumber(from: [=11=]) })
Q2:没有强引用方法,但是有强引用self
,如上所示