Skip to content

IT CSharp Directive Error

Codex edited this page Oct 11, 2026 · 2 revisions

Українська · Русский · English · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어

Evidente errore di compilazione

Manuale C# · Guida pratica

Interrompe la compilazione con errore dell'autore se la direttiva appartiene al ramo attivo. Gli esempi mostrano le condizioni per un rifiuto intenzionale.

Esempio semplice (Example.cs)

Salvare questo esempio separatamente come Example.cs. Eseguirlo indipendentemente dagli altri esempi di questa pagina.

Example.cs:

// PROJECT-EXAMPLE
#define CONFIGURED
#if !CONFIGURED
#error Missing configuration
#endif
System.Console.WriteLine("Configured");

Questo esempio si compila: CONFIGURED è definito, quindi il ramo #error è inattivo. Gli esempi che falliscono intenzionalmente più sotto restano segnalati.

Risultato:

Configured

Sintassi

#error message

Questi esempi intenzionalmente non vengono compilati. Dopo aver impostato la configurazione desiderata, rimuovi il bug o spostalo in un ramo inattivo.

Stato: errore di compilazione intenzionale.

Esempio 1

#error Missing required configuration
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using System.IO;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;

public static class Program
{
    public static async Task Main(string[] args)
    {
        Console.WriteLine("Never reached");
    }
}

Esempio 2

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
using System.IO;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;

public static class Program
{
    public static async Task Main(string[] args)
    {
        #if !CONFIGURED
        #error Define CONFIGURED before compiling
        #endif
        Console.WriteLine("Configured");
    }
}

Fonte ufficiale: Microsoft Impara.

Clone this wiki locally