checked (Riferimenti per C#)
Aggiornamento: novembre 2007
La parola chiave checked viene utilizzata per attivare in modo esplicito il controllo dell'overflow nelle conversioni e nelle operazioni aritmetiche di tipo integrale.
Per impostazione predefinita, se un'espressione produce un valore non compreso nell'intervallo del tipo di destinazione, le espressioni costanti generano errori in fase di compilazione, mentre le espressioni non costanti vengono valutate in fase di esecuzione e generano eccezioni. È tuttavia possibile utilizzare la parola chiave checked per attivare il controllo se è stato eliminato globalmente mediante opzioni del compilatore o dalla configurazione dell'ambiente.
Per informazioni sull'utilizzo della parola chiave unchecked, vedere gli esempi di unchecked.
Esempio
Nell'esempio riportato di seguito viene illustrato come utilizzare una parola chiave checked per un'espressione non costante. L'overflow viene segnalato in fase di esecuzione.
class OverFlowTest
{
static short x = 32767; // Max short value
static short y = 32767;
// Using a checked expression
static int CheckedMethod()
{
int z = 0;
try
{
z = checked((short)(x + y));
}
catch (System.OverflowException e)
{
Console.WriteLine(e.ToString());
}
return z;
}
static void Main()
{
Console.WriteLine("Checked output value is: {0}",
CheckedMethod());
}
}
/*
Output:
System.OverflowException: Arithmetic operation resulted in an overflow.
at OverFlowTest.CheckedMethod()
Checked output value is: 0
*/
Specifiche del linguaggio C#
Per ulteriori informazioni, vedere le sezioni riportate di seguito in Specifiche del linguaggio C#:
5.3.3.2 Istruzioni block, checked e unchecked
7.5.12 Operatori checked e unchecked
8.11 Istruzioni checked e unchecked
Vedere anche
Concetti
Riferimenti
Checked e Unchecked (Riferimenti per C#)
unchecked (Riferimenti per C#)