如果我使用这个自定义吸气剂:
-(NSMutableArray *)queue
{
if (_queue == nil)
{
if ([[NSFileManager defaultManager] fileExistsAtPath:kOfflineQueueFilePath]) {
return [NSKeyedUnarchiver unarchiveObjectWithFile:kOfflineQueueFilePath];
//[NSKeyedUnarchiver unarchiveObjectWithFile:kOfflineQueueFilePath];
}else{
return [[NSMutableArray alloc] init];
}
}
}
_queue 始终为 (null)。我不知道为什么会这样。
但是如果我在 init 中使用相同的代码:
if ([[NSFileManager defaultManager] fileExistsAtPath:kOfflineQueueFilePath]) {
sharedQueue.queue = [NSKeyedUnarchiver unarchiveObjectWithFile:kOfflineQueueFilePath];
}else{
sharedQueue.queue = [[NSMutableArray alloc] init];
}
它像魔术一样工作。为什么我做错了?