이것은 사소한 질문 일 수 있습니다. 그러나 나에게는 분명하지 않았으므로 일부 확인이 필요합니다.C++ try-catch 예외 처리 규칙
int function some_crap() {
some_type b;
int a = 10;
try {
a = boost::numeric_cast<int>(b);
}
catch(boost::bad_numeric_cast& e) {
std::cout << e.what() << std::endl;
return a;
}
catch(...) {
//-Handle other unknown exceptions
return a;
}
return a;
}
IIRC, 내가 catch
각 블록에 return a
문을 둘 필요가 오른쪽 : 나는 함수에 try-catch 블록을 가지고 가정? catch
블록 각각에서 a
의 값은 10
입니다. 맞습니까?
감사합니다. & 관심을 가져주세요. --T
함수의 맨 끝에 하나의'return a;'문을 넣을 수 있습니다. –
Thanks @Basie. 그러면 프로그램이 catch 블록 밖의 수익에 도달 할 것이라고 말하는 것입니까? 그건 내가 잘 모르는 부분이다. –
알 수없는 예외를 처리하는 것은 불가능합니다. 그것을 무시할 수는 있지만 실제로는 "처리"하는 것이 아닙니다. – Casey