c 異常處理

2021-07-13 07:55:31 字數 816 閱讀 7135

c++ 異常處理設計到三個關鍵字,分別是throw,try和catch。

程式使用throw丟擲異常,將可能出錯的程式段放在try中,並用catch進行捕獲。

先舉個例子:

#include #include using namespace std;

void test()

{ throw "exception";

cout<

程式將輸出:

exception

如上程式,將可能丟擲異常的test程式放入try語句塊中,然後執行到test中,丟擲異常,使用catch捕獲,將異常輸出。注意當test中異常發生後,test程式段後面的程式部分將不會輸出,也就是程式中的test()語句。

當然,一般我們在程式中可能會多加幾個catch,使得捕獲的異常的型別更多。

一般關於普通的異常就是這樣,但是我們寫程式有可能會將異常和c++多型結合起來,這樣異常就顯得高大上了。

#include using namespace std;

class exception{

public:

virtual void printexception()

{ cout<

輸出:

index exception printexception()
這樣我們可以定義乙個介面類,作為乙個異常處理的基類,然後在用各種繼承類繼承介面類,在異常處理捕獲的時候只需用基類的類,這樣依據多型特性,程式自然能正確處理傳入異常的實際的引數。

C 異常處理

結構化異常 structured exception vs c 異常 c exception 大家都知道c 異常是c 語言的乙個特性,使用者可以使用throw的方式來丟擲異常,try catch 來捕獲異常。結構化異常是諸如,zero divided,access violations等異常,這些異...

c 異常處理

一 概述 c 自身有著非常強的糾錯能力,發展到如今,已經建立了比較完善的異常處理機制。c 的異常情況無非兩種,一種是語法錯誤,即程式中出現了錯誤的語句,函式,結構和類,致使編譯程式無法進行。另一種是執行時發生的錯誤,一般與演算法有關。關於語法錯誤,不必多說,寫 時心細一點就可以解決。c 編譯器的報錯...

C 異常處理

程式設計師常常忽視異常處理的重要性,這給他們自己的 造成相當大損害。本文將討論如何在c 中使用異常處理,並介紹在應用 中新增 片段以防止某些錯誤的一些簡單方法,這些錯誤可能導致程式異常終止。結構化異常處理 net框架提供一種標準的錯誤報告機制稱為結構化異常處理。這種機制依賴於應用中報告錯誤的異常。在...