Как отключить предупреждение в xcode на определенной строке?
У меня есть вызов, подобный этому [Метод класса], и предупреждение о том, что класс не может
ответьте на сообщение "method".
Сообщение "method" действительно не существует, но мой код использует неизвестное сообщение catching
(используя forwardingTargetForSelector), поэтому он будет работать нормально, и он будет создан таким образом.
Как я могу скрыть это раздражающее предупреждение?
Ответы
Ответ 1
Если вы намерены отправить возможно-невыполненное сообщение объекту, и вы знаете, что вы собираетесь ломать сбои, вы должны использовать вызов:
id myClone = [anObject performSelector:@selector(copy)];
Это более прямо говорит о том, что вы вызываете метод, который может не существовать, и вам это нравится. Это более понятный способ сделать это, чем подавить предупреждение или подделку метода.
Ответ 2
Вы можете определить категорию, объявляющую этот метод. Наличие определения в области во время компиляции позволило бы избежать предупреждения. Что-то вроде
@interface MyClass (ShutUpTheCompilerMethods)
- (void)method;
@end
...
[MyClass method] //no warning here