objective-c objective-c-runtime

objective c - error de tiempo de ejecución de object-c "Uso del identificador no declarado ''objc_property_t''"



objective-c objective-c-runtime (1)

Tienes que importar el tiempo de ejecución.

#import <objc/runtime.h>

Estoy tratando de obtener las propiedades de mi clase utilizando el enfoque de tiempo de ejecución de obj-c que encontré en las respuestas de aquí, sin embargo, recibo muchas advertencias / errores al codificar, ¿necesito importar la biblioteca o hacer algo? ¿Para tener las funciones obj-c runtime disponibles?

objc_property_t * properties = class_copyPropertyList ([self class], & outCount);

Advertencia: "Declaración implícita de la función ''class_copyPropertyList'' no es válida en C99 Error: Uso del identificador no declarado ''objc_property_t''

Esta es toda la parte que he copiado:

unsigned int outCount, i; objc_property_t *properties = class_copyPropertyList([self class], &outCount); for (i = 0; i < outCount; i++) { objc_property_t property = properties[i]; NSString *propertyName = [[NSString alloc] initWithCString:property_getName(property)]; id propertyValue = [self valueForKey:(NSString *)propertyName]; if (propertyValue) [props setObject:propertyValue forKey:propertyName]; } free(properties);

¡Gracias por adelantado!.