0
分配成员函数的成员变量是否有可能,还是功能需要申报static
或class
?斯威夫特
class SimManager {
var particleSimulation: (inout Particle, Float) -> Void = updateParticles
func updateParticles(inout p: Particle, deltaT: Float) -> Void {
...
}
}
给人的编译器错误:
SimManager.swift:36:63: Cannot convert value of type 'SimManager -> (inout Particle, deltaT: Float) -> Void' to specified type '(inout Particle, Float) -> Void'
感谢的作品。下面的丑也在init()中起作用,以避免需要将其声明为隐式展开的可选项: particleSimulation = updateParticles ' 这个函数每帧调用5000+次,所以非常关键。因为它是'ImplicitlyUnwrappedOptional'类型的别名,所以可能会有一些开销,但不确定。为了避免动态调度开销,我还声明了函数final。 –