我是否需要自动发布我的功能参数?

时间:2012-01-17 11:22:57

标签: objective-c

我有一个接受三个NSMutableArrays的方法,一个作为输入,两个作为输出使用指向指针。

现在我在方法中创建了两个数组。

因此内存分配是在方法内完成的,因此释放内存应该是方法的责任。

在将对象分配给这些输出引用之前,我应该在对象上调用autorelease吗?

2 个答案:

答案 0 :(得分:1)

你可以autorelease他们。但请确保在方法调用之后,在两个输出指针上调用retain。完成后释放它们

NSMutableArrays *arr1, arr2, arr3;
[self methodOne:arr1 two:*arr2 three:*arr3];
[arr2 retain];
[arr3 retain];

答案 1 :(得分:1)

如果您分配或保留对象,则需要释放或自动释放它。就这么简单。