"FOUNDATION_EXPORT" vs "extern"

141

Me gustaría preguntar cuál es la razón detrás del uso en FOUNDATION_EXPORTlugar de externen los proyectos del Objetivo C.

He revisado esta pregunta y el uso FOUNDATION_EXPORTha ganado la friolera de 340 puntos (1er lugar) mientras que externsolo usé 74 puntos (2do lugar).

¿Alguien podría explicar por qué? ¿Hay alguna razón práctica para usar en FOUNDATION_EXPORTlugar de extern?

¡Gracias!

Rudolf Adamkovič
fuente
12
Realmente no se puede votar por esas respuestas como votos a favor o en contra de las técnicas que mencionan. Por un lado, ¡la respuesta con FOUNDATION_EXPORTes casi dos años mayor que la otra!
jscs

Respuestas:

171

Si mira en NSObjCRuntime.h (en Foundation) verá que se FOUNDATION_EXPORTcompila externen C, extern "C"en C ++ y otras cosas en Win32. Entonces, es un poco más compatible. Para la mayoría de los proyectos, esto no hará ninguna diferencia.

Jesse Rusak
fuente
2
¡Muchas gracias! Seguiré usando FOUNDATION_EXPORTentonces.
Rudolf Adamkovič