1

この定義に適合するブロックを書いてください: (BOOL(^)(id))block.

私が得た最も近いものは次のとおりです。

typedef BOOL (^birds)(MyObject*);
birds c = ^(MyObject* p){ return (BOOL)[p.something boolValue]; };

しかし、これcを望んでいるメッセージで渡すこと(BOOL(^)(id))blockはできないようです。

4

1 に答える 1

1

BlockBOOL (^block)(id)が予期される場合は、 ではなくそのようなブロックを渡す必要がありますBOOL (^block)(MyObject *)

だからこれを試してください:

typedef BOOL (^birds)(id);
birds c = ^(id pp) { MyObject *p = (MyObject *) pp; return [p.something boolValue]; };
于 2010-08-26T10:20:22.430 に答える