Buscar..


Sintaxis

  • marcada (a + b) // expresión marcada
  • deseleccionado (a + b) // expresión deseleccionada
  • marcada {c = a + b; c + = 5; } // bloque marcado
  • sin marcar {c = a + b; c + = 5; } // bloque sin marcar

Comprobado y desactivado

Las declaraciones de C # se ejecutan en el contexto marcado o no marcado. En un contexto comprobado, el desbordamiento aritmético genera una excepción. En un contexto no verificado, el desbordamiento aritmético se ignora y el resultado se trunca.

short m = 32767;   
short n = 32767;
int result1 =  checked((short)(m + n));   //will throw an OverflowException
int result2 =  unchecked((short)(m + n)); // will return -2

Si no se especifica ninguno de estos, el contexto predeterminado se basará en otros factores, como las opciones del compilador.

Comprobado y desactivado como un alcance

Las palabras clave también pueden crear ámbitos para (des) verificar múltiples operaciones.

short m = 32767;
short n = 32767;
checked
{
    int result1 = (short)(m + n); //will throw an OverflowException
}
unchecked
{
    int result2 = (short)(m + n); // will return -2
}


Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow