Recherche…


Syntaxe

  • vérifié (a + b) // expression vérifiée
  • décoché (a + b) // expression non vérifiée
  • vérifié {c = a + b; c + = 5; } // bloc vérifié
  • non cochée {c = a + b; c + = 5; } // bloc non vérifié

Vérifié et décoché

Les instructions C # s'exécutent dans un contexte vérifié ou non. Dans un contexte vérifié, le débordement arithmétique déclenche une exception. Dans un contexte non contrôlé, le dépassement arithmétique est ignoré et le résultat est tronqué.

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 aucun de ces éléments n'est spécifié, le contexte par défaut reposera sur d'autres facteurs, tels que les options du compilateur.

Vérifié et décoché comme une portée

Les mots-clés peuvent également créer des étendues afin de (dé) vérifier plusieurs opérations.

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
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow