티스토리 뷰
try catch문은 예외를 처리하기위한 문법이다. try는 예외발생이 가능한 모든 문장을 하나의 일 단위로 분류한 것이며, try에서 발견된 예외의 상황에 throw가 실행되고, throw에 의해 던저진 예외데이터는 catch()에서 처리된다. (try 영역에서 코드 실행 중 에러가 발생의 경우에는 예외 이후의 try영역의 나머지 부분은 실행 되지 않게 된다. )
#include<iostream> using std::cout; using std::endl; double mydiv(int a, int b){ try{ if(b==0) throw b; return a/b; } catch(int e){ cout<<"에러" << e<<endl; } } int main(){ cout<<mydiv(10, 0); return 0; }
위 코드는 try catch문이다. 이 문법은 하나의 큰 블럭 { } 내에서 사용할 수 있지만, { } 외에서도 사용할 수 있다.
#include<iostream> using std::cout; using std::endl;
double mydiv(int a, int b){
if(b==0) throw b; return a/b; } int main(){ try{ cout<< mydiv(10, 0); } catch(int e){ cout<<"에러" << e<<endl; } return 0; } |
다음과 같이, try , catch문은 없이 throw만 있는 경우가 있다. 하지만, 이런경우는 호출하는 곳에서 try, catch를 기입해주면 이와같이 사용할 수 있다.
c++은 java와 다르게 finally문법이 없다고 하니, 주의하자
'Language > C++' 카테고리의 다른 글
[C++] JsonCpp 설치 및 설정하기 (0) | 2014.02.03 |
---|---|
[C++] 함수템플릿과 템플릿함수 (0) | 2013.10.06 |
[C++] 멤버 이니셜라이저 (0) | 2013.10.05 |
[C++] 생성자와 소멸자 (0) | 2013.10.05 |
[C++] namespace (0) | 2013.10.05 |
댓글
최근에 올라온 글
최근에 달린 댓글
글 보관함
- Total
- Today
- Yesterday