Makro, um zu wissen, ob ARC in Xcode 4.3.2 aktiviert ist oder nicht

8

In derselben Datei wollen wir Code schreiben, der ARC und nicht-ARC unterstützt. Dafür ist ein Makro erforderlich.

%Vor%

Wie erreiche ich dieses Makro, Gibt es irgendeine Art von Makro? Lass es mich wissen, bitte. Vielen Dank für die Unterstützung Hinweis: ARC_ENABLED Nur habe ich zum Beispiel

geschrieben     
Ajay 07.06.2012, 10:39
quelle

2 Antworten

25

Es gibt ein objektiver C-Makro __has_feature , mit dem Sie überprüfen können, ob der Bogen für nicht aktiviert ist.

Von der Clang-Spracherweiterungsdokumentation

  

Automatische Referenzzählung

     

Clang unterstützt die automatische Referenzzählung in   Objective-C, wodurch die Notwendigkeit für manuelle entfällt   Retain / Release / Autorelease Nachricht sendet. Es gibt zwei Feature-Makros   mit automatischer Referenzzählung verbunden:    __has_feature(objc_arc) zeigt die Verfügbarkeit von automatisiert an   Referenzzählung im Allgemeinen, während __has_feature(objc_arc_weak)   zeigt an, dass das automatisierte Referenzzählen auch Unterstützung für    __weak Zeiger auf Objective-C Objekte.

Der Abschnitt Makros zum Überprüfen von Funktionen ist ein sehr guter Lesevorgang.

Sie können es so benutzen ..

%Vor%

Der Code-Teil wurde schamlos aus dieser Antwort .

    
Krishnabhadra 07.06.2012 10:44
quelle
2

Im Folgenden wird USING_ARC , USING_MRC & amp; USING_GC ist 0 oder 1, zusammen mit ein paar Plausibilitätsprüfungen:

%Vor%

Platzieren Sie das in einem geeigneten .h, das in Ihrem Projekt enthalten ist .pch

Sie können jetzt #if USING_x verwenden, um die bedingte Kompilierung überall zu steuern.

Sie können auch einige Dateien vom Kompilieren unter bestimmten Speichermodellen ausschließen, indem Sie zum Beispiel am Anfang der Datei einfügen:

%Vor%     
CRD 07.06.2012 20:20
quelle

Tags und Links