#undef(C# 참조)
#undef를 사용하면 기호의 정의를 해제할 수 있습니다. 이때 정의 해제된 기호를 #if 지시문의 식으로 사용하면 식이 false가 됩니다.
기호는 #define 지시문 또는 /define 컴파일러 옵션으로 정의할 수 있습니다. 지시문이 아닌 모든 문을 사용하려면 #undef 지시문이 먼저 파일에 나타나야 합니다.
예제
// 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
}
}