Estoy escribiendo una biblioteca de clases para Mac OS X e iOS que se lanzará como un Cocoa Framework para OS X y una biblioteca estática para iOS. Para simplificar las cosas, tengo la intención de utilizar múltiples objetivos en Xcode. Sin embargo, las clases en Mac OS X se vinculan contra Cocoa.h mientras que en iOS se vinculan contra Foundation.h.¿Se pueden usar las directivas de preprocesador para importar diferentes archivos de encabezado para Mac e iOS?
Mis preguntas son básicamente:
- Podría el enlace marco Mac OS X contra el Foundation.framework en su lugar? Las clases utilizadas en el marco son NSString, NSMutableString y NSMutableArray.
O podría utilizar directivas de preprocesador dentro de los archivos de cabecera para controlar la inclusión de marcos, p.
#ifdef MacOSX #import <Cocoa/Cocoa.h> #else #import <Foundation/Foundation.h> #endif
Tome un vistazo a este http://stackoverflow.com/questions/3181321/which-conditional- compilar-para-usar-para-cambiar-entre-mac-y-código-específico-iphone. – detunized