Estoy usando estructuras C en objc y he creado una función que ensambla la estructura como la de Cocoa API. Lo que pasa es que esta estructura no es como NSRect o NSPoint. Esta estructura contiene objetos objc, así que estoy viendo una posible pérdida de memoria aquí. ¿Debo proporcionar una función para "liberar" la estructura?¿Cómo usar las estructuras C que contiene objetos ObjC?
No estoy creando una clase ISKNewsCategory porque no habrá ningún comportamiento pero ¿Crees que este es un buen enfoque o debo definir la clase incluso si no hay comportamiento?
typedef struct ISK_NewsCategory {
NSString *name;
NSString *code
} ISKNewsCategory;
NS_INLINE ISKNewsCategory ISKMakeNewsCategory(NSString *name, NSString *code) {
ISKNewsCategory category;
category.name = [name retain];
category.code = [code retain];
return category;
}
Para expandir su "único tiempo": iterar estructuras es 2-4x más rápido que iterar clases. A medida que los proyectos crecen, esto se está convirtiendo en un problema real (el proyecto actual itera muchos cientos de miles de elementos con frecuencia, tiene que ejecutarse en tiempo real). – Adam