2013-10-04 24 views
10

Ich bin ein wenig verwirrt als wenn wir FOUNDATION_EXPORT in Ziel-c verwenden sollten und was der Zweck davon ist? Kann man das mit Laien erklären? Vielen Dank!Wann sollte FOUNDATION_EXPORT verwendet werden?

+2

Siehe diese zwei Links: http://stackoverflow.com/questions/10953221/foundation-export-vs-extern, http://stackoverflow.com/questions/1041866/in-c-source-whatis-is- the-effect-of-extern-c – JuJoDi

+0

auch: http://stackoverflow.com/questions/17668018/when-to-use-uikit-extern-vs-just-extern/17669269#17669269 – justin

+0

Duplikat von http: // stackoverflow.com/q/10953221/1698467 – skywinder

Antwort

3

Wenn wir FOUNDATION_EXPORT in Objective-c

Jedes Mal, wenn Sie importieren Fundament Rahmen in Objective-C verwenden sollten. Es ist die beste Vorgehensweise, FOUNDATION_EXPORT anstelle von extern zu verwenden. Da NSObjCRuntime.h im Foundation-Framework enthält es C-und C++ - Bibliothek. Für die Standardsichtbarkeit der c- und C++ -Symbole kompiliert es entsprechend, um es kompatibler zu machen.

Purpose FOUNDATION_EXPORT anstelle von der Verwendung von extern:

1) Visible Symbolity

2) Kompatibilität zu anderen Quellcode.

3

Wann ist FOUNDATION_EXPORT zu verwenden?

Niemals.

FOUNDATION_EXPORT ist ein undokumentierter Implementierungsdetails von Apples System Frameworks, so dass Sie es überhaupt nicht verwenden sollten.

+1

Was bedeutet "** undokumentiert **"? Schauen Sie in 'NSObjCRuntime.h' + ausführlichere Antwort hier: http://Stackoverflow.com/a/10953284/1698467 – skywinder

+0

Ich sehe Matt Thomson (AFNetworking Schöpfer) verwendet, dass in seinen Bibliotheken. Sollten wir es 2017 überhaupt nicht nutzen? Vielen Dank! – ppalancica

Verwandte Themen