一个基本问题,甚至可能很愚蠢,但对我来说很重要。我不知道答案,感谢您抽出时间。
[问题]:
在 Swift 中,计算属性没有任何存储分配,所以它不是真正的变量 这句话可以在第二章第 197 页找到iOS Apprentice (5th version)
这本书[问题]:
计算属性没有任何存储分配?我不明白这一点。内存中必须有某个地方来存放数据以进行计算,否则,这怎么可能?或者,这意味着只计算被调用的值并在数据交给调用者后删除/销毁数据,我在这个概念的方向上是正确的吗?
谢谢
最佳答案
计算属性很像不带参数并返回值的函数。在计算属性执行的生命周期内,会在栈上临时分配一些内存,用于存储计算属性的局部变量。
除此之外,计算属性的指令必须存储在编译程序的某处。幸运的是,您只需要一份定义副本,它可用于所有实例。
重要的一点是不需要每个实例的内存。
关于swift - 计算属性不需要存储分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44334646/