2012-04-04 16 views
1
私はこのような方法で宣言しています

コンパイルエラー

- (void)doAnythingWithThisBlock:(void(^)(NSString *, ... NS_REQUIRES_NIL_TERMINATION))AnythingBlock; 

それは与えているコンパイルエラー:

Expected ')' 

が、私はこのようにそれを宣言しています:それは罰金コンパイルし、を期待どおりに動作

- (void)doAnythingWithThisBlock:(void(^)(NSString *, ...))AnythingBlock; 

私はNS_REQUIRES_NIL_TERMINATIONを使用して、可変数の引数を持つブロックとして入力を受け入れるメソッドを宣言することはできませんか?

私はXCodeの4.2に

+0

+1この問題を解決しましたか? –

+0

ちょっと..私は戻ってチェックする必要があります。これは私が長い時間をバックに聞いた.. – Devarshi

+0

とにかくあなたがチェックした.. NSString.h .. - (instancetype)initWithFormatのメソッド宣言:(NSString *)形式.. NS_FORMAT_FUNCTION(1,2); ..あなたはそれを見てみたいかもしれない;) – Devarshi

答えて

1

それをしようとしています、私はあなたが特定のタイプにあなたのブロックをtypedefをしようと、引数として渡すことができますしかしNS_REQUIRES_NIL_TERMINATIONのみメソッド宣言1

のためだと思います:意志を打ち鳴らすこともできますそれを食べる?