c++異常丟擲與捕獲及處理
一、異常
迄今為止,我們處理程式中的錯誤一般都是用if語句測試某個表示式,然後處理錯誤的特定義**。
c++異常機制
使用了三個新的關鍵字 (
seh(結構化
異常處理))
try ──標識可能出現的異常**段
throw ──丟擲乙個異常
catch ──標識處理異常的**段
使用異常處理將帶來更多的系統開銷。因此慎用異常。
二、丟擲異常
throw
throw必須在 try**塊中.後邊跟的值決定丟擲異常的型別。
三、捕獲異常
catch
出現在try**塊後,後邊跟的資料決定捕獲的型別
catch(...) //表示捕獲所有異常
? int
_tmain(
int
argc, _tchar* argv)
printf
(
"%d"
,a/b);
}
catch
(
char
*s)
catch
(
int
i)
catch
(...)
getchar
();
return
0;
}
C 異常捕獲及處理
之前在刷 leetcode 時用到了異常處理,記錄一下。一般來說 c 的庫函式呼叫時,如果發生引數使用不當,或引數超限等,程式會直接丟擲異常而終止執行,但這並不是我們想要的結果,我們往往希望當出現異常時,再對異常進行特殊處理進而完善程式,使程式繼續執行。在 leetcode myatoi 一題中,要...
捕獲和丟擲異常
異常處理5個關鍵字 try catch finally throw throws 不捕獲異常 public class test 捕獲異常,finally 可以不要,用於 假設io資源關閉,就會用到。public class test catch arithmeticexception e fina...
oracle plsql 捕獲異常和丟擲異常
在寫oracle儲存過程的時候很多東西放到儲存過程裡面比如一些判斷等,要比在程式邏輯裡面簡單很多,但是也會涉及到捕獲和丟擲一樣的問題。exception when excepttion name1 then when excepttion name2 then when excepttion nam...