[英]C++ Exception Handling In Base Class
假設我有一些通用的Application類定義,其中包含:
class Application{
public:
void Run(){
try{
....
}catch(const Exception& ex){
....
}
}
現在假設我從App1類繼承Application:
class App1: public Application{
void Run(){
Application::Run();
throw ex;
}
}
有沒有辦法在基類中捕獲異常? 我試過上面的內容並沒有用。
使用虛函數,如下所示:
class Application{
public:
virtual void DoRun() {
....
}
void Run(){
try{
DoRun();
}catch(const Exception& ex){
....
}
}
class App1: public Application{
virtual void DoRun() {
Application::DoRun();
throw ex;
}
}
不,你不能。 當你throw ex;
在App1:Run()
, Application::Run()
已經完成運行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.