C#中的檢查和未檢查異常


在 C# 中,你可以執行已檢查或未檢查的語句。

在已檢查狀態中,算術溢位時會引發異常,而在未檢查狀態中會忽略算術溢位。

已檢查的異常

使用 checked 關鍵字顯式啟用整數型別算術操作和轉換的溢位檢查。為此,只需設定 checked 關鍵字。

可以使用編譯器選項、環境配置或 checked 關鍵字啟用溢位檢查。

res = checked(val + 10);

假設 val 的值為 2147483647,即 int 型別的最大值。上述操作將引發錯誤,因為它被檢查了。這會在執行時啟用溢位檢查。

未檢查的異常

使用 unchecked 關鍵字禁止整數型別算術操作和轉換的溢位檢查。為此,只需設定 unchecked 關鍵字。

這裡,忽略了算術溢位。使用它來禁止溢位檢查。

res =unchecked(val + 10);

假設 val 的值為 2147483647。上述操作不會引發錯誤,因為使用 unchecked 關鍵字阻止了溢位檢查。

更新日期: 2020 年 6 月 22 日

已觀看 3K+ 次

開啟你的 職業生涯

完成課程即可獲得認證

開始學習
廣告