2010-05-02 3 views
36

Что такое «DNS_BLOCK_ASSERTIONS» (флаг компилятора C)?Что такое «DNS_BLOCK_ASSERTIONS» (флаг компилятора C)?

+0

Фактически '-DNS_BLOCK_ASSERTIONS' является флагом. См. Комментарий к ответу, объясняющий флаг: '-D' - это флаг, а' NS_BLOCK_ASSERTIONS' - его параметр. Ex в Xcode: '-DNS_BLOCK_ASSERTIONS = 1'. Смутно, этот флаг не имеет пространства между собой и его параметром. Я добавляю этот комментарий, чтобы помочь получить хиты на этой странице с помощью поисковых систем. –

ответ

61

Макрос NS_BLOCK_ASSERTIONS (нет «D») подавляет проверки, выполняемые NSAssert. Вы передаете его компилятору с помощью -DNS_BLOCK_ASSERTIONS (см. Комментарии для объяснения «D»).

+16

Чтобы уточнить, '-D' определяет константу, и это один из запутанных флагов, у которых нет пробела между ним и его параметром. –

+0

Очистить! Огромное спасибо! – Eonil