3
我發現了一個類似的問題: NSMutableArray addObject in for loop - memory leakObjective-C的ADDOBJECT導致內存泄漏
但是所有這些建議似乎解決我的問題。
我有一個簡單的循環,我創建一個對象並將其添加到數組。當我嘗試在每個循環結束時釋放對象時,應用程序將以「EXC_BAD_ACCESS」的形式崩潰。如果我不釋放對象,我得到泄漏的內存:
在.H
NSMutableArray *mainlist;
...
@property (nonatomic, retain) NSMutableArray *mainList;
在.M
@synthesize mainlist;
...
for (int i = 0; i < [self.objects count]; i++) {
MyObj *myObj = [[MyObj alloc] init];
myObj.title = [[self.objects objectAtIndex: i] valueForKey: @"title"];
[self.mainlist addObject:myObj];
[myObj release]; // crashes with release
}
MyObj中只是有一些屬性:
@property (nonatomic, retain) NSString *title;
@property (nonatomic, retain) NSString *date_text;
...
@synthesize title;
@synthesize date_text;
- (void)dealloc
{
[super dealloc];
[title release];
[date_text release];
}
@end
任何幫助將非常感激。
謝謝。
你可以發佈'MyObj'的'init'消息嗎? – 2011-05-07 13:04:22
你在* MyObj *類中重寫了* init *方法嗎? – EmptyStack 2011-05-07 13:05:35
我已經更新了上面的代碼。沒有init方法。只是getters/setters。它需要它嗎? – GivP 2011-05-07 13:10:43