Директива endif
Директива endif (запись "#endif")
закрывает блок, который начали директивой
if. Без пары
#if … #endif компилятор сообщит
об ошибке. Внутри одного блока допустимы
#elif и #else, но каждый уровень
вложенности закрывают своим #endif.
Код после #endif снова участвует в
сборке целиком.
Синтаксис
#if условие
// код ветки
#endif
Пример
Давайте объявим символ и явно закроем блок
директивой endif:
#define SHOW
using System;
class Program
{
static void Main()
{
#if SHOW
Console.WriteLine("inside");
#endif
Console.WriteLine("after");
}
}
Результат выполнения кода:
"inside"
"after"
Пример
Давайте закроем блок с веткой else:
using System;
class Program
{
static void Main()
{
#if MISSING
Console.WriteLine("yes");
#else
Console.WriteLine("no");
#endif
}
}
Результат выполнения кода:
"no"
Пример
Давайте вложим два блока и закроем каждый
своим #endif:
#define OUTER
#define INNER
using System;
class Program
{
static void Main()
{
#if OUTER
Console.Write("o");
#if INNER
Console.WriteLine("i");
#endif
#endif
}
}
Результат выполнения кода:
"oi"