2011-07-28 48 views
1

我有以下情形:何時發佈傳遞給多個方法的NSMutableArray實例?

class1 
methodA 
NSMutableArray *myArray=[[NSMutableArray alloc]init]; 
[class2 methodB:myArray]; 
[myArray release]; 
... 

class2 
methodB:(NSMutableArray) myArray{ 
[class3 methodB:myArray]; 
} 
... 

class3 
methodC:(NSMutableArray) myArray{ 
    manipulate contents of myArray... 
} 
... 

是否適當釋放myArray的只是還是了methodA我應該釋放它在每個的methodB和methodC?我希望所有三種方法都可以訪問相同的內容,即它是在每種方法中訪問的相同數組。

回答

4

如果您不擁有myArraymethodBmethodC(即您沒有保留在該方法中),則不要在這些方法中發佈。您只能通過alloc以第一種方法擁有陣列,因此您只能在methodA中發佈它。所以你的方法是正確的。

相關問題