在将其与deinitaizlization进行比较时,我对deallocation的主题感到有点困惑。在取消初始化变量后的那一刻,不会发生解除分配.....我的主要观点是,我们可以以某种方式使用/操纵未初始化的变量吗?或者它们几乎没用,因为释放发生在......之后......
答案 0 :(得分:1)
在Swift中,deinit
方法作为释放过程的一部分被调用。确切地说,当分配给对象的内存被释放时,您无法知道,但是在对象被去除后,您无法访问该对象。
除了这样做没有任何意义之外,在deinit
之后操作对象是不可能的,因为取消分配过程是通过删除最后strong
个引用来启动的。物体。因为没有引用你怎么能操纵对象。 (我想您可以使用无主/不安全的引用来尝试访问该对象,但这会导致您的应用程序崩溃)