C 筆記 模板類,異常處理

2021-08-03 01:45:10 字數 1813 閱讀 7614

1 模板類

templateclass a

protected:

t a;

};

普通類繼承模板類

class b :public a

private:

int b;

};

呼叫

void main()
初始化b類一定要先初始化a的構造方法。如果不初始化,如下:

模板類繼承模板類

template 

t>

class

c : public

a>

protected:

t c;

};

呼叫

void main()
2 異常處理

catch會根據丟擲的異常型別,來捕獲相應的資料型別。

void main()

}catch(int a)

catch (char* name)

catch (...)

system("pause");

}

列印結果

未知異常
異常處理 丟擲到方法外

void mydiv(int a,int b)

}void func()

catch (char* a)

}void main()

catch (char* a)

system("pause");

}

首先異常在mydiv()方法中被丟擲,然後在func()中被catch,最終在main方法中被catch。

丟擲物件 異常類

class myexception;

void mydiv(int a,int b)

}void main()

catch (myexception& e)

catch (myexception* e)

system("pause");

}

丟擲標準異常

class nullpointerexception : public exception

};void mydiv(int a,int b)

else

if (b==null)

else

if (b==0)

}

void main()

catch (nullpointerexception& e)

catch (...)

system("pause");

}

列印結果

為空
內部類異常

class err

};};void mydiv(int a,int b)

}

void main()

catch (err::myexception& e)

catch (...)

system("pause");

}

列印結果

接受到內部類異常

C 異常處理類與自定義異常處理類

例1 自定義乙個繼承自excepton的異常類myexception c 標準中,定義在中的任何異常類都派生自exception class,本例也只是簡單地由exception繼承,在try段丟擲乙個異常並捕捉。如下 test.cpp version 1.0 decript define a ex...

C 複習筆記 異常處理

c 語言異常處理機制的基本思想是將異常的檢測與處理分離。c 使用throw和try catch語句支援異常處理,分以下三步 1 檢查異常 使用try語句塊 2 丟擲異常 使用throw語句塊 3 捕捉異常 使用catch語句塊 throw 表示式 try catch 異常資訊型別 看例子最容易理解 ...

模板與異常處理

1 已知下列主函式 int main 宣告求3個數中最小者的函式模板,並寫出呼叫此函式模板的完整程式。include using namespace std template t min t a,t b,t c int main 2 編寫乙個求任意型別陣列中最大元素和最小元素的程式,要求將求最大元素...