#undef (C#-Referenz)
Mit #undef kann die Definition eines Symbols aufgehoben werden, sodass beim Verwenden des Symbols als Ausdruck in einer #if-Direktive der Ausdruck als false ausgewertet wird.
Ein Symbol kann entweder mit der #define-Direktive oder mit der /define-Compileroption definiert werden. Die #undef-Direktive muss in einer Datei vor allen Anweisungen, die keine Direktiven darstellen, verwendet werden.
Beispiel
// preprocessor_undef.cs
// compile with: /d:DEBUG
#undef DEBUG
using System;
class MyClass
{
static void Main()
{
#if DEBUG
Console.WriteLine("DEBUG is defined");
#else
Console.WriteLine("DEBUG is not defined");
#endif
}
}