Delphi - Как использовать более определенные значения в условной компиляции

Можно ли комбинировать IFDEFS в моем источнике?

Например:

{$IFDEF INCOMING or OUTGOING}
...
{$ENDIF}

Спасибо за вашу помощь:  дд

Ответ 1

Используйте $IF с Defined(), а не $IFDEF:

{$IF Defined(INCOMING) or Defined(OUTGOING)}
...
{$IFEND}

Ответ 2

Альтернатива для более старых версий:

{$IFDEF INCOMING}
  {$DEFINE INCOMING_OR_OUTGOING}
{$ENDIF}
{$IFDEF OUTGOING}
  {$DEFINE INCOMING_OR_OUTGOING}
{$ENDIF}

{$IFDEF INCOMING_OR_OUTGOING}
...
{$ENDIF}

Ответ 4

Здесь вариант ответа Дэвида, использующий "не".

Я использую это, когда хочу отключить заставку в своих приложениях в режиме отладки. Это мешает мне случайно отключить всплеск, если я забуду обнулить NOSPLASH в сборке релизов.

  {$IF not (Defined(NOSPLASH) AND Defined(DEBUG))}
     //code to create splash 
  {$IFEND}