Это может звучать как вопрос новичка, однако я новичок в разработке для iOS.
У меня следующий код в моем проекте, в проекте включена поддержка ARC, и я получаю сообщение об ошибке при его выполнении (неверный доступ)и хотел бы понять причину проблемы и решить ее.
при некотором нажатии на кнопку следующий код вызывается в MTClassA.m
файле
-(void) someMethod
{
for (int i = 0; i < N; i++) {
...
(param1 and param2 are location variables)
...
mFlickr = [[MTFlickr alloc] initWithParam1:param1 param2:mparam2];
mFlickr.delegate = self;
[mFlickr fetchImages];
}
}
в MTClassA.h
заголовочном файле mFlickr объявлен как MTFlickr* mFlickr
, поэтому по умолчанию используется квалификатор __strong
.
функция обратного вызова класса fetchImages
выглядит следующим образом:
- (void)didRecieveImageLinksFromFlickr:(NSArray*)response
param1:(NSString*)param1 param2:(NSString*)param2 {
...
}
Поэтому в основном я хотел бы знать, правильно ли создавать таким образом объекты mFlickr в цикле for и ожидать, что обратный вызовработать правильно, если нет, подскажите, пожалуйста, что нужно изменить?
PS Нужно ли менять mFlickr на локальную переменную?Если да, как мне гарантировать, что методы param1 и param2 - это те, которые я пропустил для итерации цикла for?