throw:
一旦程式碼偵測到錯誤,便用它表示遇上了無法處理的錯誤
Ex:
If( condition )
throw runtime_error(“error is occurred!!”); //如果發生error則中斷執行
try:
負責處理錯誤的程式碼
Ex:
try
{
if(b==0)
throw 0;
ans = a/b;
}
catch(int err)
{
cout<<”b must be > 0”;
}
標準的Exception Classes:
exception 最一般的問題
runtime_error 只能在執行期偵測出來的問題
range_error 範圍外錯誤
overflow_error overflow
underflow_error underflow
logic_error 能在執行期前偵測出來的問題
domain_error 引數不存在
invalid_argument 不適當的引數
length_error 長度過長
out_of_range 合法範圍外的值
全站熱搜