Я столкнулся с некоторым кодом obj-c, и мне интересно, есть ли способ его упростить:
#if ( A && !(B || C)) || ( B || C )
это то же, что и?
#if ( A || B || C )
Если нет, есть ли другой способ сформулировать это, чтобы было легче читать?
(B || C)) || (B || C) то же, что (A || B || C)? Я столкнулся с некоторым кодом obj-c, и мне интересно, есть ли способ его упростить: #if (A &&! (B || C)) || (B || C) это то же самое, что? #if (A || B || C) Если нет, то есть ли другой ...Я столкнулся с некоторым кодом obj-c, и мне интересно, есть ли способ его упростить:
#if ( A && !(B || C)) || ( B || C )
это то же самое, что и?
#if ( A || B || C )
Если нет, есть ли другой способ сформулировать это, чтобы было легче читать?
(B || C)) || (B || C) то же, что (A || B || C)? Я столкнулся с некоторым кодом obj-c, и мне интересно, есть ли способ его упростить: #if (A &&! (B || C)) || (B || C) это то же самое, что? #if (A || B || C) Если нет, то есть ли другой ...Я столкнулся с некоторым кодом obj-c, и мне интересно, есть ли способ его упростить:
#if ( A && !(B || C)) || ( B || C )
это то же самое, что и?
#if ( A || B || C )
Если нет, есть ли другой способ сформулировать это, чтобы было легче читать?
[править] Я попробовал таблицу истинности, прежде чем задавать вопрос, но подумал, что что-то упустил, потому что сомневался, что Foundation.framework / Foundation.h будет использовать эту более сложную форму. Есть ли для этого веская причина?
Вот исходный код (из Foundation.h):
#if (TARGET_OS_MAC && !(TARGET_OS_EMBEDDED || TARGET_OS_IPHONE)) || (TARGET_OS_EMBEDDED || TARGET_OS_IPHONE)