我有数千行链接动画代码。我已将其全部移至 GraphicsHelper 类,并引用回我的 ViewController 中的数据。一旦我完成了代码,我想根据我可以保持内存(和我的 View Controller 代码)小的理论放弃类实例。在贯穿多个“阶段”的整个应用程序中, View Controller 始终处于范围内。有没有办法以编程方式断开助手类的类实例?我试图分配 nil 但我得到一个错误,该类不符合 NilLiteralConverter 协议(protocol)。有什么方法可以断开实例或替代我认为的大量代码问题?谢谢大家。世界上只有我一个人想做这样的事情吗?
请您参考如下方法:
您需要将您的类的实例变量声明为可选的,
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
}
}
