Diretiva #undef
Diretiva de pré-processador que remove a definição atual de uma constante ou macro que foi definida anteriormente usando a diretiva #define .
identificador #undef |
---|
Parâmetros
Item | Descrição |
---|---|
Identificador |
Identificador da constante ou macro para remover a definição de. Se você estiver definindo uma macro, forneça apenas o identificador, não a lista de parâmetros. |
Comentários
Você pode aplicar a diretiva #undef a um identificador que não tenha nenhuma definição anterior; isso garante que o identificador seja indefinido. A substituição de macro não é executada em instruções #undef.
A diretiva #undef normalmente é emparelhada com uma diretiva #define para criar uma região em um programa de origem no qual um identificador tem um significado especial. Por exemplo, uma função específica do programa de origem pode usar constantes manifestas para definir os valores específicos que não afetam o restante do programa. A diretiva #undef também funciona com a diretiva [) para controlar a compilação condicional do programa de origem.
Constantes e macros podem ser indefinidas da linha de comando usando a opção /U, seguidas pelos identificadores a serem indefinidos. Isso equivale a adicionar uma sequência de diretivas #undef no início do arquivo de origem.
Exemplos
O exemplo a seguir mostra como usar a diretiva #undef para remover definições de uma constante simbólica e uma macro.
#define WIDTH 80
#define ADD( X, Y ) (X) + (Y)
#undef WIDTH
#undef ADD