MyClassで入力されたものがMyClassで認識できないメソッドを呼び出すのは、おそらく間違いか間違いを引き起こす可能性があるため、警告ではなくエラーです。なぜARCでは 'セレクタxの既知のメソッドがありません'がハードエラーですか?
ただし、このエラーはARC固有の理由は何ですか? ARCは、ココアのメモリ管理規約に基づいて、保持する/リリースする/自動リリースする必要のあるものを決定します。セレクタの名前が分かっていることがわかっていることが示唆されます。 SEL変数をperformSelector:
に渡すことに問題があるのは当然です。セレクタがinit/copy/newメソッドであるかどうかはコンパイル時にはわかりません。しかし、なぜこれをクラスインタフェースで見るか、あるいは何の違いもありませんか?
私はARCの仕組みについて何か不足していますか、まったく矛盾しているという警告がありますか?
命名規則を無効にする方法については、どうすればいいですか?;) –
http://clang.llvm.org/docs/AutomaticReferenceCounting.htmlから削除されるとすぐに。 :Dしかし、クリスはこれが一般的に良い解決策ではないということは正しいです。これは、ARCの下での漏れやクラッシュよりも良い解決策です。しかし、正しい解決策は、ObjC命名規則に準拠するように名前を修正することです。 –