Директива pragma
Директива pragma задаёт параметры
компиляции прямо в исходнике. Распространённый
вариант - "#pragma warning disable" и
"#pragma warning restore" с кодом
предупреждения, например CS0219 для
неиспользованной переменной. Область действия
ограничена фрагментом файла между disable и
restore. На логику программы pragma
обычно не влияет - меняются только сообщения
компилятора.
Синтаксис
#pragma warning disable КОД
#pragma warning restore КОД
Пример
Давайте отключим CS0219 вокруг переменной,
которую не используем, и напечатаем результат:
using System;
class Program
{
static void Main()
{
Console.WriteLine("start");
#pragma warning disable CS0219
int unused = 5;
#pragma warning restore CS0219
Console.WriteLine("done");
}
}
Результат выполнения кода:
"start"
"done"
Пример
Давайте снова включим предупреждение после
restore и выведем число:
using System;
class Program
{
static void Main()
{
int num = 7;
#pragma warning disable CS0219
int spare = 1;
#pragma warning restore CS0219
Console.WriteLine(num);
}
}
Результат выполнения кода:
7
Пример
Давайте отключим предупреждение только на одну строку и посчитаем сумму:
using System;
class Program
{
static void Main()
{
int a = 4;
#pragma warning disable CS0219
int b = 6;
#pragma warning restore CS0219
Console.WriteLine(a + b);
}
}
Результат выполнения кода:
10