Udostępnij za pośrednictwem


#undef dyrektywy (C/C++)

Usuwa (undefines) nazwy utworzone wcześniej z #define.

#undef identifier

Uwagi

#undef Dyrektywa usuwa bieżącą definicję identyfikatora.W konsekwencji kolejne wystąpienia identyfikatora są ignorowane przez preprocesora.Aby usunąć definicji makra za pomocą #undef, określ tylko makra identyfikatora ; nie udzielaj listy parametrów.

Można również zastosować #undef na identyfikator, który nie ma poprzedniej definicji w dyrektywie.Zapewnia to, że identyfikator jest niezdefiniowany.Zastąpienie makro nie jest wykonywane w ramach #undef instrukcji.

#undef Dyrektywy jest zazwyczaj sparowanego z #define dyrektywy, aby utworzyć region w programie źródłowym, w którym identyfikator ma specjalne znaczenie.Na przykład określoną funkcję programu źródłowego można używać stałych manifestu, do definiowania wartości specyficzne dla środowiska, które nie wpływają na pozostałej części programu.#undef Dyrektywy współpracuje również z #if dyrektywy w celu kontrolowania kompilacji warunkowej programu źródłowego.Zobacz # if, #elif, # else i # ENDIF dyrektyw Aby uzyskać więcej informacji.

W poniższym przykładzie #undef dyrektywa usuwa definicje stała symboliczne i makra.Należy zauważyć, że biorąc pod uwagę tylko identyfikator makro.

#define WIDTH 80
#define ADD( X, Y ) ((X) + (Y))
.
.
.
#undef WIDTH
#undef ADD

Programu Microsoft

Makra mogą być niezdefiniowana z wiersza polecenia, używając opcji /U, następuje nazwy makr, być niezdefiniowana.Efekt wydającego polecenie to jest równoważne z sekwencji #undefNazwa makra sprawozdań na początku pliku. 

KONIEC Microsoft szczególne

Zobacz też

Informacje

Dyrektywy preprocesora