0
我有一個類,這是初始化像這樣。getter和setter和財產保留在objective-c
// myclass.h
@property(nonatomic,retain) NSMutableArray *daysOfWeek; // this is in .h file
// myclass.m
@synthesize daysOfWeek;
-(id)init {
if(self=[super init]) {
// initialize days of week
self.daysOfWeek = [NSMutableArray arrayWithCapacity:0];
}
return self;
}
然而,在應用程序生命週期的後期,似乎daysOfWeek被釋放。如果我添加保留init方法:
self.daysOfWeek = [[NSMutableArray arrayWithCapacity:0] retain];
然後一切正常,我可以從daysOfWeek添加和檢索對象。 我認爲合成會保留daysOfWeek,我在這裏錯過了什麼?
謝謝
self.daysOfWeek = [NSMutableArray arrayWithCapacity:0];應該沒問題...檢查你的代碼 - 可能是你覆蓋你的數組某處不使用財產或釋放它... – Vladimir 2010-09-09 08:14:41