2010-05-02 8 views
36

Was ist die "DNS_BLOCK_ASSERTIONS" (C-Compiler-Flag)?Was ist die "DNS_BLOCK_ASSERTIONS" (C-Compiler-Flag)?

+0

Eigentlich ist '-DNS_BLOCK_ASSERTIONS' das Flag. Siehe den Kommentar zu der Antwort, die das Flag erklärt, "-D" ist das Flag und "NS_BLOCK_ASSERTIONS" ist der Parameter. Ex in Xcode: '-DNS_BLOCK_ASSERTIONS = 1'. Verwirrenderweise hat dieses Flag keinen Platz zwischen sich und seinem Parameter. Ich füge diesen Kommentar hinzu, um Treffer auf dieser Seite mit Suchmaschinen zu erhalten. –

Antwort

61

Das Makro NS_BLOCK_ASSERTIONS (kein "D") unterdrückt die von NSAsssert durchgeführten Prüfungen. Sie liefern es an den Compiler mit -DNS_BLOCK_ASSERTIONS (siehe die Kommentare für eine Erklärung des "D").

+16

Nur um zu verdeutlichen, '-D' definiert eine Konstante, und es ist eines der verwirrenden Flags, das keinen Abstand zwischen ihm und seinem Parameter hat. –

+0

Löschen! Vielen Dank! – Eonil