是否可以在swift中手动取消分配静态变量?

是否可以在swift中手动取消分配静态变量?,swift,memory,Swift,Memory,我只需要在应用程序启动时存储一次静态变量,并在短时间内存储 我想在静态变量使用结束后释放它。是的,静态变量可以用var声明,也可以用?作为可选变量,就像实例和局部变量一样 class Y { } class X { static weak var myOptionalStaticThing:Y? = Y() func foo() { // X.myOptionalStaticThing gets deallocated after this /

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


我想在静态变量使用结束后释放它。

是的,静态变量可以用
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
    }
}

设置为可选,完成后将其设置为
nil
。是的,我可以设置为nil,我没有想到这一点。