Я хочу направить NSMutableArray с очереди как селекторов одним из таких являетсяПочему мой код возвращает null?
- (id)dequeue {
id obj = nil;
if ([self count] > 0) {
id obj = [self objectAtIndex:0];
if (obj != nil) {
[self removeObjectAtIndex:0];
}
}
return obj;
}
Проблема заключается в том, что я ARC включена, и данные, которые obj
точки на отпускается в removeObjectAtIndex:
так dequeue
всегда возвращает нуль.
Какой элегантный способ обойти это или мой подход совершенно неправильный?
Это было вызвано опечаткой и не имеет никакого отношения к ARC.
Кроме того, нет необходимости проверять 'OBJ = nil' объект, возвращаемый из' objectAtIndex: 'никогда не может быть' nil' (если вы не облажались внутренние данные структура вашего массива). – Monolo
Этот вопрос не соответствует теме, потому что речь идет о ошибке опечатки. – Monolo
Изменен заголовок. – MdaG