質問

現在、特定のメッセージを傍受し、それらを誰にも転送するだけでなく、それらを処理するだけではなく、これらのメソッドは本当に存在しません。そして、ここで問題が発生しますが、明らかにコンパイラが不足しているメソッド実装について不平を言っていき、それを停止する方法を理解することはできません。メソッドは停止するためだけにコンパイラを停止させるためだけにスタブメソッドを追加します。任意の成形されていて、私は彼らを私の前に知らない(もう少し具体的にするために、このプロジェクト)。

理想的には、この特定のクラスをまったくチェックする方法を行ってはいけないことをコンパイラに伝えたいと思いますが、これはむしろほどのように思われるので、NSProxyやその他の方法でも幸せになるでしょうプロジェクト全体/ファイルの警告ごとにコンパイラをシャットアップする必要があります。)

役に立ちましたか?

解決

あなたのスイッチのステートメントは実際には恣意的ではありません、それらは任意の長さを持つことができます。幅広い長さの場合は、先に進んでコンパイラの利点を宣言することができます(そしてあなたはエラーチェックを受けることができます。例えば:

typedef void (^ObjCCaseBlock)();

@interface NSObject ()
- (id)switch;
- (void)case:(NSString*)a :(ObjCCaseBlock)b;
- (void)case:(NSString*)a :(ObjCCaseBlock)b case:(NSString*)a :(ObjCCaseBlock)b;
- (void)case:(NSString*)a :(ObjCCaseBlock)b case:(NSString*)a :(ObjCCaseBlock)b case:(NSString*)a :(ObjCCaseBlock)b;
@end
.

発生しやすい数のレベルを繰り返します(そしてそれが問題にぶつかったら、レベルを追加することができます)。それは少し面倒ですが、難しくありません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top