예외처리

말 그대로 예외적으로 일어나는 상황을 처리하는 것


정확한 정의가 궁금하면 검색하면좋아요


try : 예외가 발생할만한 코드 블록을 지정하는데 try 다음의 { } 괄호안에 예외 처리 대상 코드를 작성한다. 이 블록 안에서 예외가 발생했을 때 throw 명령으로 예외를 던진다.


throw : 프로그램이 정상적으로 실행될 수 없는 상황일 때 이 명령으로 예외를 던진다. throw 다음에 던지고자 하는 예외를 적는다. 예외를 던진다는 것은 예외가 발생되었다는 것을 알리며 이 예외를 처리하는 catch문으로 점프하도록 한다. throw 명령 아래쪽의 코드들은 모두 무시되며 곧바로 예외 처리 구문으로 이동한다.


catch : try 블록 다음에 이어지며 던져진 예외를 받아서 처리한다. 그래서 catch 블록을 예외 핸들러라고 부른다. catch 다음에는 받고자 하는 예외의 타입을 적는데 이 객체는 throw에 의해 던져진다. catch 블록에는 예외를 처리하는 코드가 작성된다.
 
예외 처리 구문
try {
     if (예외 조건) throw 예외 객체;
}
catch (예외 객체) {
     예외 처리
}


#include <iostream>
using std::cout;
using std::cin;
void main() {
int a, b;
cout << "a 입력\n";
cin >> a;
cout << "b 입력\n";
cin >> b;
try {
if (a==0) throw a;
else if (b == 0) throw b;
cout << a / b;
}
catch (int exp) { //throw 에서 보낸 것을 받음
cout << "0ㄴㄴ";
}
}

try애서 a또는 b가 0일경우에 throw로 그값을 보내고

cout << a / b; 부분으 실행하지 않는다.

그리고 cout << "0ㄴㄴ";을 실행














공감로그인을 필요로 하지않습니다.


공감





'IT > 기타' 카테고리의 다른 글

Visual Studio코드 정리 단축키  (0) 2018.06.30
톱니바퀴 만들기  (0) 2018.06.30
Hello, world!  (0) 2018.06.30

+ 최근 게시물