Heim > Artikel > Backend-Entwicklung > Geprüfte vs. ungeprüfte Ausnahmen in C#
Sie können Anweisungen in C# in aktiviertem oder ungeprüftem Kontext ausführen.
In einem geprüften Kontext lösen arithmetische Überläufe eine Ausnahme aus, während in einem ungeprüften Kontext arithmetische Überläufe ignoriert werden.
Verwenden Sie das Schlüsselwort „checked“, um die Überlaufprüfung für ganzzahlige arithmetische Operationen und Konvertierungen explizit zu aktivieren. Legen Sie dazu einfach das aktivierte Schlüsselwort fest.
Die Überlaufprüfung kann über Compileroptionen, Umgebungskonfiguration oder mithilfe des Schlüsselworts „checked“ aktiviert werden.
res = checked(val + 10);
Angenommen, der Wert von val ist 2147483647, was dem Maximalwert des Typs int entspricht. Da es aktiviert ist, wird oben ein Fehler ausgegeben. Dies ermöglicht eine Überlaufprüfung zur Laufzeit.
Verwenden Sie das Schlüsselwort unchecked, um eine Überlaufprüfung für ganzzahlige arithmetische Operationen und Konvertierungen zu verhindern. Legen Sie dazu einfach das Schlüsselwort unchecked fest.
Hier wird der arithmetische Überlauf ignoriert. Verwenden Sie dies, um eine Überlaufprüfung zu verhindern.
res =unchecked(val + 10);
Angenommen, der Wert von val ist 2147483647. Der obige Code löst keinen Fehler aus, da die Überlaufprüfung mit dem Schlüsselwort unchecked verhindert wird.
Das obige ist der detaillierte Inhalt vonGeprüfte vs. ungeprüfte Ausnahmen in C#. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!