¿Objective-C admite bloques "a la Smalltalk"?bloques Smalltalk en Objective-c?
En Smalltalk, los bloques son similares a "cierres" o "expresiones lambda" o "funciones sin nombre" que se encuentran en otros idiomas.
¿Objective-C admite bloques "a la Smalltalk"?bloques Smalltalk en Objective-c?
En Smalltalk, los bloques son similares a "cierres" o "expresiones lambda" o "funciones sin nombre" que se encuentran en otros idiomas.
Fuera de la caja, sólo están soportados en la versión de Objective-C 2.0 que viene con XCode 3.2 o posterior . Esto significa que necesitarás Snow Leopard si quieres usar las herramientas de compilación oficiales. Aquí se describe una solución potencial para 10.5: http://thirdcog.eu/pwcblocks/#leoiphone
Sí, tomar este ejemplo:
[[myString componentsSeparatedByString:@"\n"] enumerateObjectsWithOptions:NSEnumerationConcurrent usingBlock:^(id obj, NSUInteger idx, BOOL *stop) {
NSString *line = (NSString *)obj;
//do what your going to do with line...
}];
¿Estoy interpretando este código correctamente? ¿Puede ObjC manejar bloques escritos arbitrariamente, o solo bloques explícitamente tipados? – mcandre
@mcandre objetivo-c no es un lenguaje fuertemente tipado. Puede pasar un 'id' o' void * 'y convertirlo al tipo que desee. –
Consulte esta pregunta para obtener algunos enlaces adicionales: http://stackoverflow.com/questions/2516325/futures-for-objective-c –
¡Excelente enlace, gracias! – cfischer