2014-11-18 5 views
-1

내가 코드어떻게 C에서 catch 블록에서 예외를 처리 할 수 ​​++

try 
{ 
    .... 
} 
catch() 
{ 
    .... // exception occur here ... how to handled. 
} 

가 위의 시나리오가 처리 할 수있는 C의 모든 메커니즘 ++ 있는가가 말한다.

+3

는'try' /'catch'에 랩 ...? – Biffen

+7

예외 처리기에서 예외를 throw 할 수있는 코드가 없는지 확인함으로써? –

+2

위의 설명은 농담처럼 들리 겠지만 심각한 문제입니다. –

답변

2

이 당신이 정말 원하는 것을 생각한다면, 당신은 이런 식으로 작업을 수행 할 수 있습니다

try 
{ 
    try 
    { 
     //... 
    } 
    catch(...) 
    { 
     //... 
     if(..) 
      throw std::runtime_exception("error occured"); 
    } 
} 
catch(std::runtime_exception& e) 
{ 
    // handle exception of exception handler 
} 
+0

나는 또한 같은 생각을하고 있지만 ... 이것이 다른 어떤 일에 최선의 방법인지 여부도 모른다. ...? – Nihar

+0

@Nihar : try-catch 블록을'catch (...)'에 넣을 수도 있습니다. -body :'try {} catch (...) {try {} catch (...)}' –

관련 문제