来自" Swift Apprentice第二版第225页":
属性(已计算)保持您可以获取和设置的值。方法执行工作
引用来自" Swift官方文档":
除了存储的属性,类,结构和枚举还可以定义计算属性,实际上存储值
一个人说"存储",另一个说" hold"。我对计算属性有点困惑,计算出的属性究竟没有存储值是什么意思?这是否意味着系统不会分配任何内存空间来保存值,只会保留它。但是,持有意味着什么?你无法抓住某些东西,你可能需要一个盒子来装东西,不是吗?
答案 0 :(得分:1)
文档中的简单示例
struct Cuboid {
var width = 0.0, height = 0.0, depth = 0.0
var volume: Double {
return width * height * depth
}
}
volume
永远不会存储在内存中。每当调用getter时,乘法的结果就像在本地范围内的数学运算一样动态返回。
官方Apple文档根本不使用术语hold
。