【发布时间】:2016-12-26 07:26:50
【问题描述】:
节日快乐!
我在 Neuberg 的“iOS 10 Programming Fundamentals”的第 147 页受到阻碍。他的主张是“当你明显地改变一个值类型的实例时,你实际上是用一个 不同的 实例替换那个实例。”
问题:如果这是真的,那么为什么我没有看到正在初始化的新实例??
///////////////////// Slight modification from page 147 in Neuberg, 2016 edition
struct Digit {
var number : Int
init(_ n:Int) {
self.number = n
print("number was set in the initializer to: \(n)")
}
}
var d : Digit = Digit(123) {
didSet {
print("didSet detected old: \(oldValue.number) to new: \(d.number)")
}
}
d.number = 42
d.number = 56
印刷品--
number 在初始化程序中设置为:123
检测到 didSet 的变化从:123 到 42
检测到的 didSet 变化从:42 到 56
但我没有再看到,“号码已设置...”
【问题讨论】:
标签: swift swift-structs