Algo bueno que tiene el entorno Xcode y su compilador es que es compatible con ambos lenguajes (Objective-C y C++), incluso al nivel de mezclar el código en los mismos archivos. Lo único necesario es nombrar los archivos de C++ como .h/.cpp y los de Objective-C (o mezcla) como .h/.mm (en lugar del .m habitual). No es necesario cambiar la configuración por defecto de ningún proyecto para que la compilación sea exitosa.
Un ejemplo habitual que a mí me costó solucionar: ¿Cómo pasar strings de C (char *) a strings de Objective-C (NSString)?
float fPrueba = 3.456; char * strPrueba = new char[16]; sprintf(strPrueba, "%.6f", fPrueba); NSString * objCString = [NSString stringWithUTF8String:strPrueba];
Tres líneas en C++ y la siguiente pasa a ser en otro lenguaje pero utilizando la variable que ya hemos definido. ¡Y funciona! Espectacular…
Etiquetas: C/C++, Objective-C, Xcode