静态变量存储在哪里?堆还是堆栈?



当我们在struct中定义静态变量时会发生什么?存储在哪里?已知结构体存储变量存储在每个对象的堆栈中。但是,从所有代码中访问的静态变量存储在哪里?

或者存储在特殊的

struct City {
var name: String
static var maxCityPopulation: Int = 1000 // where is it stored?? 
}

似乎静态变量应该与结构体的元信息一起存储。但是我找不到信息存储在哪里。

根据此来源:https://varun04tomar.medium.com/open-nuts-and-bolts-of-memory-management-in-ios-swift-part-1-4927b60fccf8

除了堆和堆栈之外,还有一个数据空间,用于存放静态变量和类型元数据。

最新更新