Отправка «NSError *const __strong *» в параметр типа «NSError *__autoreleasing *» изменяет свойства сохранения/освобождеIOS

Программируем под IOS
Ответить
Гость
 Отправка «NSError *const __strong *» в параметр типа «NSError *__autoreleasing *» изменяет свойства сохранения/освобожде

Сообщение Гость »


Этот вопрос похож на типы NSError для iOS, но описанное там решение не сработало, и я считаю, что это не совсем то, что мне нужно.

У меня есть метод, который выполняет асинхронный вызов, а затем вызывает блок завершения. Когда я пытаюсь передать NSError ** в блок завершения, я получаю следующую ошибку:


Отправка «NSError *const __strong *» в параметр типа 'NSError
*__autoreleasing *' изменяет свойства сохранения/освобождения указателя


Код выглядит следующим образом:< /p>

Код: Выделить всё

+(void) agentWithGUID:(NSString *) guid completion:(void (^)(AKAgentProfile * agentProfile, NSError ** error)) completionBlock
{
dispatch_queue_t requestQueue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
dispatch_async(requestQueue, ^{
NSString * parameterizedUrl = [AKAgentProfileEndPoint stringByAppendingString:guid];
NSURL *url = [NSURL URLWithString:parameterizedUrl];
NSData *data = [NSData dataWithContentsOfURL:url];

NSError * error = nil;

AKAgentProfile * agentProfile = [[[AKAgentFactory alloc] init] agentProfileWithData:data error:&error];

dispatch_async(dispatch_get_main_queue(), ^{
completionBlock(agentProfile,&error);
});

});
}


Источник: https://stackoverflow.com/questions/277 ... utoreleasi
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»