Corsi

Le direttive di processore in C#

Le direttive di processore possono determinare il modo in cui viene eseguito un determinato programma in quanto indicano al compilatore come eseguire il proprio compito definendo generalmente che non è il programma che viene influenzato ma direttamente il codice sorgente. Tramite le direttive è possibile far eseguire o non eseguire una porzione di codice in base alla definizione di un determinato simbolo anch’esso definito per mezzo di una direttiva.

Le direttive sono facilmente riconoscibili tramite la presenza del carattere “#”.

Le direttive maggiormente utilizzate sono:

  • #define e #undef;
  • #region e #endregion
  • #warning e #error

Define e Undefine consentono di definire e eliminare la definizione di un simbolo ad esempio:

#DEFINE DEBUG
#UNDEF DEBUG

In questo caso abbiamo inizialmente definito la direttiva DEBUG e successivamente eliminato la sua dichiarazione ma teoricamente potremmo influenzare il codice in base alla dichiarazione di DEFINE stesso tramite le direttive #IF, #ELSE, #ELIF e #ENDIF, le prime tre direttive hanno la stessa logica di funzionamento di IF, ELSE, ELSE IF mentre ENDIF definisce semplicemente il termine della direttiva #IF. Esempio:

#DEFINE RELEASE

#IF DEBUG
Console.WriteLine("Sei in Debug")
#ELIF RELEASE
Console.WriteLine("Sei in Release")
#ELSE
Console.WriteLine("Non Definito")
#ENDIF

Le direttive #REGION e #ENDREGION alla esclusivamente la funzione di raggruppare delle porzioni di codice, personalmente le trovo molto utili nel caso in cui le righe di codice presenti in un singolo file .cs sono molto elevate, consentendo di dare maggiore ordine al vostro codice.

La direttiva #WARNING genera un messaggio di avviso in fase di compilazione. Come segue

#DEFINE DEBUG

#IF DEBUG
#WARNING attenzione sei in debug
#ENDIF

Infine, la direttiva #ERROR genera un messaggio di errore e interrompe la compilazione del programma. Ad esempio:

#DEFINE DEBUG

#IF DEBUG 
#ERROR non puoi eseguire in debug
#ENDIF 

In seguito la lista delle direttive in C# 8:

DirettivaDescrizione
#define symDefinisce il simbolo sym
#undef symElimina la definizione del simbolo sym
#if symVerifica se il simbolo sym è definito
#elseDefinisce un ramo alternativo all’if
#endifIdentifica la fine di un blocco if
#elif symCombina #else con un ulteriore #if
#warning msgGenera un avviso in fase di compilazione
#error msgGenera un errore di compilazione
#pragma warningSopprime o ripristina avvisi di compilazione
#linePermette di ridefinire numero di linea o nome del file utilizzati da avvisi ed errori di compilazione
#region nomeIdentifica l’inizio di una regione
#endregionIdentifica la fine della regione iniziata con la precedente direttiva #region
#nullable enable|disbleAbilita o disabilita il contesto per i tipi riferimento nullable

LINK UTILI

Altro Su C#: https://www.developersumo.com/c-sharp/
I nostri Corsi: https://www.developersumo.com/corsi/
Pagina Instagram: https://www.instagram.com/developer_sumo/?hl=it
Le nostre App su Play Store: https://play.google.com/store/apps/developer?id=Developer+Sumo

What's your reaction?

Excited
0
Happy
0
In Love
0
Not Sure
0
Silly
0

You may also like

More in:Corsi

Leave a reply

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *