, getter, Alex ,
init(_ x: Double, _ y: Double) {
self.x = x
self.y = y
}
, setter x y , , didSet willSet. magnitudeActual 0,
var v = Vector(3,4)
0.
var v = Vector()
v.x = 3
v.y = 4
, Actual -1, .
magnitudeActual -1, GoZoner.
, .
, :
struct Vector {
var x: Double = 0.0 {
didSet {
println("set x")
magnitudeActual = -1.0
}
}
var y: Double = 0.0 {
didSet {
println("set y")
magnitudeActual = -1.0
}
}
var magnitudeActual: Double = -1.0
var magnitude: Double {
mutating get {
if magnitudeActual < 0.0 {
println("Recalc")
magnitudeActual = sqrt(x * x + y * y)
}
return magnitudeActual
}
}
init() {}
init(_ x: Double, _ y: Double) {
self.x = x
self.y = y
}
}