如果非要 ClassA.h釋放物體,存儲器管理,目標C
1. @屬性(非原子,保留)的NSMutableArray * ARR;
ClassA.m
- (ClassA的)功能{
1.ClassA *obj = [[ClassA alloc] init]; // initialize the arr // add another object into the arr 2. [obj.arr addObject:nameOfAnObject] 3. return obj;
}
在ClassB的,我想打電話給(ClassA的)功能方法。我所做的是
ClassB.m
- (無效)viewDidLoad中{
1.[super viewDidLoad]; 2.ClassA *classAinB = [[classA alloc] init]; 3.classAinB = [classA function]; 4.[classAinB release];
}
根據內存管理的規則,因爲我自己的ClassAinB在ClassB.m,所以我最終解放了它。我的問題是我在ClassA.m中擁有的var ClassA如何釋放它,以便在ClassB的第3行回調之後,我仍然擁有其arr包含的ClassA對象nameOfAnObject object
請在這個問題上給我建議。任何意見都歡迎在這裏。謝謝
如何識別ID:ClassA * obj = [[[ClassA alloc] init] autorelease] ;.它的意思是返回[[obj autorelease]]; – tranvutuan
你也可以這樣做。它做同樣的事情,因爲它全部在相同的運行循環迭代中完成。 – mprivat