某处.h我把
@property (nonatomic, retain) NSMutableArray * BusinessQueue;
-(BNUtilitiesQuick *) init {
if (!(self = [super init]))
{
return nil;
}//if the superclass is NSObject, this must be init
self.locationManager = [[[CLLocationManager alloc] init]autorelease];
BusinessQueue = [[[NSMutableArray alloc]init]autorelease];
return self; //and return the object itself
}
我看到BusinessQueue = [[[NSMutableArray alloc]init]autorelease];
的方式将使引用计数为1.1。 -1表示自动释放(有时是后者)和1表示因为BusinessQueue是保留属性。
但是,BusinessQueue有时会被解除分配。
为什么BusinessQueue始终出错但位置管理器不
任何错误的代码?或NSMutableArray不能在init类声明?
答案 0 :(得分:5)
BusinessQueue
不是属性。 self.BusinessQueue
可能是,如果你这样定义的话。
进行初始化的最佳/最简单方法是:
self.businessQueue = [NSMutableArray array];