为什么swift语言不能提供nil来释放或释放内存

时间:2016-10-05 13:40:12

标签: objective-c swift

当我们在Objective-c中工作时,当我们想要解除分配或释放对象时,我们可以为ex:NSMutableArray * arr;

执行此操作
[arr removeAllObjects];
arr = nil;
arr = [[NSMutableArray alloc] init];

我们可以这样做并且该对象被解除分配。

那么为什么没有办法用快速语言这样做呢

我们只能这样做:

arr.removeAllObjects()
arr = NSMutableArray()

我没有得到对象如何解除分配或释放内存。

1 个答案:

答案 0 :(得分:2)

首先,如果您将变量声明为可选,则可以将其设置为nil

然而,使用ARC,您不需要自己释放对象(这就是ARC的用途)。重置变量时,系统将为您处理内存。