異常處理機制

2021-09-29 09:10:37 字數 1380 閱讀 4653

1、c++中異常處理機制使得異常的引發和異常的處理不必在同乙個函式中。

2、異常是專門針對抽象程式設計中的一系列錯誤處理的,c++的函式機制是棧結構,先進後出,依次訪問,無法跳躍。

3、異常超脫於函式機制,決定了其對函式的跨越式回跳。

4、異常跨越函式

普通用法

//基本用法

void add(int a,int b)

cout << a / b << endl;

}int main()

catch (int e)

system("pause");

return 0;

}

異常捕捉方式是基於型別匹配,相當於函式返回型別的匹配,而不是函式引數的匹配,所以在捕獲異常時不用考慮多種資料型別匹配的問題

catch**塊必須出現在try後,並且在try塊後可以出現多個catch**塊,以捕捉各種不同型別的拋擲。

void add(int a,int b)

cout << a / b << endl;

}int main()

catch (char e)

catch (int e)

catch (...)

system("pause");

return 0;

}

異常捕獲嚴格按照型別匹配

int main()

catch (int e)

{ cout << "int型別異常錯誤" <1、throw的異常是有型別的,可以使,數字、字串、類物件。

2、throw的異常是有型別的,catch嚴格按照型別進行匹配。

void func() throw (a, b, c , d)

這個函式func()能夠且只能丟擲型別a b c d及其子型別的異常。

void func()

沒有包含異常介面宣告,可以丟擲任何型別的異常

void func()  throw()

不拋擲任何型別異常的函式可以宣告

如果函式丟擲的異常是異常介面宣告所不允許的異常,unexpected函式會被呼叫,該函式會預設呼叫terminate函式終止程式。

結論://發生異常之後是跳躍式跨函式的

//接收到異常之後可以不處理再丟擲異常

//catch異常時 按照型別進行catch

//異常捕捉嚴格按照型別匹配

異常處理機制

異常處理的三個步驟 檢查異常,丟擲異常,處理異常 異常處理基本原理 把需要檢測的程式放到try塊中,把異常處理的程式放在catch塊中。如果執行乙個函式出現了異常,可以丟擲異常資訊。然後查詢try塊下面的catch塊是否可以處理該異常。如果該函式不處理該異常,將傳遞給它的上一級函式 呼叫函式 如果它...

異常處理機制

異常處理機制分為以下2點 異常處理五個關鍵字 try catch finally throw throws 用了try catch程式出現異常不會終止,會丟擲異常繼續執行下面任務 public static void main string args catch error e catch exce...

異常處理機制

try catch exception e finally throw 將產生的異常丟擲 強調的是動作 丟擲的既可以是異常的引用,也可以是異常物件。位置 方法體內 throws 如果乙個方法可能會出現異常,但沒有能力處理這種異常,可以在方法宣告處用throws子句來宣告丟擲異常。用它修飾的方法向呼叫...