【发布时间】:2014-09-22 18:06:48
【问题描述】:
我正在尝试创建一个具有惰性计算变量 magnitude 的 Vector 结构,但我似乎找不到方法。
这就是我所拥有的:
struct Vector {
var x: Double = 0.0 {
didSet {
magnitudeActual = -1.0
}
}
var y: Double = 0.0 {
didSet {
magnitudeActual = -1.0
}
}
var magnitudeActual: Double = 0.0
var magnitude: Double {
if magnitudeActual < 0.0 {
magnitudeActual = sqrt(x * x + y * y) //cannot assign to "magnitudeActual" in self
}
return magnitudeActual
}
init() {}
init(_ x: Double, _ y: Double) {
self.x = x
self.y = y
}
}
我已经尝试了很多方法来让它工作,但似乎没有任何工作。此外,willGet 也不错,但不存在。
【问题讨论】:
标签: swift