【发布时间】:2021-09-03 12:36:16
【问题描述】:
现在我正在观看 WWDC,了解 Swift 性能会议
在那次会议中,一张照片让我感到困惑
我知道数组在编译时无法确定它的大小,因此它们将项目实例存储在堆中,并将该项目的引用存储在堆栈中,如上(d[0],d[1])
但是该数组中的refCount 是什么(在d[0] 旁边)?
是drawables数组实例的变量指针吗?
【问题讨论】:
-
“所以他们将项目实例存储在堆中,并将该项目的引用存储在堆栈中,就像上面一样 (d[0], d[1])”不是真的。是的,项目存储在堆上的存在容器中(因为这是一个数组,其选择是协议类型),但这些引用不存储在堆栈中,它们存储在数组的堆分配缓冲区中
标签: swift automatic-ref-counting