我可以在Swift中以编程方式删除/删除类实例

时间:2015-01-05 22:46:13

标签: ios swift removeclass instances

我有数千行链式动画代码。我已将它全部移动到GraphicsHelper类,并将引用返回到ViewController中的数据。一旦我完成代码,我想放弃理论上的类实例,我可以保持内存(和我的视图控制器代码)很小。视图控制器在整个应用程序中保持在范围内,该应用程序经历了几个"阶段"。有没有办法以编程方式断开辅助类的类实例?我试图分配nil,但我得到一个错误,该类不符合NilLiteralConverter协议。有没有办法断开实例或替代我感觉到的大量代码问题?谢谢大家。我是世界上唯一想做这样事的人吗?

1 个答案:

答案 0 :(得分:3)

您需要将类的实例变量声明为可选,

class ViewController: UIViewController {
    var helper: GraphicsHelper!

    override func viewDidLoad() {
        super.viewDidLoad()

        helper = GraphicsHelper()
        // some time later
        helper = nil // no errors on this line, GraphicsHelper deinit called
    }
}