Checked und Unchecked (C#-Referenz)

C#-Anweisungen könnten entweder in einem geprüften oder nicht geprüften Kontext (checked oder unchecked) ausgeführt werden. In einem überprüften Kontext löst der arithmetische Überlauf eine Ausnahme aus. In einem nicht geprüften Kontext wird der arithmetische Überlauf ignoriert, und das Ergebnis wird abgeschnitten.

  • checked Gibt einen geprüften Kontext an.

  • unchecked Gibt einen ungeprüften Kontext an.

Wenn weder checked noch unchecked angegeben wird, ist der Standardkontext von externen Faktoren wie Compileroptionen abhängig.

Die folgenden Vorgänge sind von der Überlaufüberprüfung betroffen:

  • Ausdrücke, die die folgenden vordefinierten Operatoren für ganzzahlige Typen verwenden:

    ++``-- - (unär) + - *``/

  • Explizite numerische Konvertierungen zwischen ganzzahligen Typen.

Mit der Compileroption /checked können Sie einen geprüften oder nicht geprüften Kontext für alle ganzzahligen arithmetischen Anweisungen angeben, die nicht explizit im Umfang eines checked- oder unchecked-Schlüsselworts enthalten sind.

Siehe auch

C#-Referenz
C#-Programmierhandbuch
C#-Schlüsselwörter
Anweisungsschlüsselwörter