Я пытаюсь передать косвенный указатель на NSTimer scheduledTimerWithTimeInterval: цели: селектор: USERINFO: повторы: следующим образом:Как передать указатель на указатель на NSTimer scheduledTimerWithTimeInterval с ARC
-(void)assignResultAfterDelay:(Result **)resultPtr {
[NSTimer scheduledTimerWithTimeInterval:1000
target:self
selector:@(assignResult:)
userInfo:resultPtr // how to do this?
repeats:NO];
}
Это Безразлично» t из-за приведения из (Результат * __strong *) в id, что дает «Неявное преобразование косвенного указателя на указатель Objective-C на ошибку« id ».
Вариации и комбинации мостовых отливок, таких как (__bridge id)resultPtr
, с использованием objc_unretainedPointer(resultPtr)
, или изменение типа указателя на (Result * __weak *)
не помогли. Каков правильный способ сделать это?
Я полагаю, что я мог бы создать класс-оболочку, содержащий мой косвенный указатель, и отправить экземпляр этого, но это кажется уродливым. Есть ли лучший способ сделать это?