2012-07-13 77 views
1

如何讓Visual Studio拋出整數溢出異常? 我知道我可以明確地使用checked語句。但我想在我的解決方案中使這種行爲默認(至少在調試過程中)。捕獲Visual Studio中的整數溢出異常

int bigNumber= 12345; 
byte overflowException = (byte)(bigNumber); //want to see an exception here 
+2

可能的重複http://stackoverflow.com/questions/2772379/making-sure-unsigned-int-long-always-execute-in-checked-context-in-c-sharp - 但看看這裏因爲第一個答案可能會回答你的問題 – Rawling 2012-07-13 09:35:07

+0

@Rawling這絕對是最終答案的重複,但在上述問題標題中輸入並不能找到它。所以在這裏留下一點點價值。 – 2012-07-13 09:41:57

回答

4

根據the docs有轉動此作爲默認值的/checked編譯器選項。

的/編譯器檢查選項允許你指定選中或取消選中 上下文明確 不是在一個選中或取消選中關鍵字範圍內的所有整數運算的語句。

在項目的項目屬性中,轉到「Build」選項卡並單擊「Advanced ...」按鈕。在這個窗口是一個「檢查算術溢/下溢」複選框:

enter image description here

順便說一句,不要求第二組中(byte)(bigNumber)括號:(byte)bigNumber

+0

謝謝!它確實有效。 – Peter17 2012-07-13 09:40:18