Objetivo-C bloque que acepta un objeto y devuelve un valor booleano
-
01-10-2019 - |
Pregunta
Puede usted por favor escriba para mí un bloque que se ajusta a esta definición:. (BOOL(^)(id))block
Lo más cerca que he conseguido es:
typedef BOOL (^birds)(MyObject*);
birds c = ^(MyObject* p){ return (BOOL)[p.something boolValue]; };
Sin embargo, parece que pasa esta c
en un mensaje que quiere (BOOL(^)(id))block
es un no ir.
Solución
Si se espera una BOOL (^block)(id)
bloque que necesita para pasar un bloque de este tipo y no una BOOL (^block)(MyObject *)
.
Así que trate esto:
typedef BOOL (^birds)(id);
birds c = ^(id pp) { MyObject *p = (MyObject *) pp; return [p.something boolValue]; };
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow