-2

如果我正在创建一个具有这样的属性的属性

@property (nonatomic,retain) NSArray *array;

如果使用点运算符或 setarray 方法设置此属性,则此对象的保留计数将增加。请解释一下这个属性什么时候发布?还是我必须手动释放它。

如果我做

self.array = nil;

在类的 dealloc 方法中,这会减少保留计数吗?

4

1 回答 1

0

每当将设置为对象的强指针更改为指向 nil 时,它都会减少引用计数。

如果您使用的是 ARC,并且没有其他指向同一个 NSArray 对象的强(或保留)指针,那么一旦您将 self.array 设置为 nil,您的对象就会被释放。

于 2013-06-17T20:00:39.917 回答