是否可以在swift中手动释放静态变量?

时间:2016-10-27 10:45:37

标签: swift memory

我需要在应用程序启动时只存储一次静态变量,并在短时间内存储。

我希望在静态变量使用完毕后解除分配。

1 个答案:

答案 0 :(得分:0)

是的,静态变量可以用var声明,并且可以用?作为可选项,就像实例和局部变量一样。

class Y { }

class X {
    static weak var myOptionalStaticThing:Y? = Y()

    func foo() {
        // X.myOptionalStaticThing gets deallocated after this
        // if this were the only strong pointer to X.myOptionalStaticThing
        X.myOptionalStaticThing = nil
    }
}