如何在特定行的xcode中禁用警告?

Cod*_*kes 12 xcode warnings message forwarding

我有一个类似这样的调用[类方法]和一个警告说类可能不响应"方法"消息.

"方法"消息确实不存在,但我的代码使用未知消息捕获(使用forwardingTargetForSelector),因此它将运行良好,并且构建为以这种方式运行.我怎么能隐藏这个恼人的警告?

cde*_*osa 16

如果您打算向对象发送可能未实现的消息,并且您知道要捕获失败,则应该使用调用:

id myClone = [anObject performSelector:@selector(copy)];
Run Code Online (Sandbox Code Playgroud)

这更直接地宣告了你的意图,即你正在调用一种可能不存在的方法,并且你很酷.这是一种比清除警告或伪造方法更明确的方法.

  • `performSelector`仅适用于参数类型和返回类型都是对象的方法; 谁只有0,1或2个参数 (2认同)
  • 另外,为了在`super`上调用方法,这将不起作用 (2认同)