Syntaxe

Ajoute un symbole pour #IF avec #DEFINE, ou en retire un avec #UNDEF. Un symbole n'a pas de valeur : il est défini ou non.

#DEFINE <symbol>
#UNDEF <symbol>

S’écrit aussi : #UNDEF

Les éléments

<symbol>Un seul nom : lettres, chiffres et _, sans chiffre au début. La casse est ignorée.

À savoir

  • Il vaut à partir de sa ligne, pour toute la suite du programme, y compris les fichiers inclus après lui. Un module de #DEFINE inclus en premier sert de fichier de réglages.
  • Ni valeur ni macro : #DEFINE LEVEL 3 est refusé avec #DEFINE requires one symbol. Pour une valeur nommée, utilisez #CONSTANT.
  • Un #DEFINE ou un #UNDEF placé dans une branche #IF écartée ne fait rien.
  • #UNDEF retire aussi un symbole du profil : après #UNDEF DEBUG, #IFDEF DEBUG est faux même dans l'éditeur.
  • Le programme en cours d'exécution ne peut pas lire un symbole. Il n'existe que pour #IF, #IFDEF et #IFNDEF.

Exemple

#DEFINE CHEATS#IF CHEATS AND NOT RELEASEConsole("cheat keys on")   ' cheat keys on#ENDIF#UNDEF CHEATS#IFDEF CHEATSConsole("never printed")#ENDIF
Dans le manuel : Le préprocesseur