다음은 0으로 나누기 오류를 잡는 예입니다.
예시
#include <iostream>
using namespace std;
int display(int x, int y) {
if( y == 0 ) {
throw "Division by zero condition!";
}
return (x/y);
}
int main () {
int a = 50;
int b = 0;
int c = 0;
try {
c = display(a, b);
cout << c << endl;
} catch (const char* msg) {
cerr << msg << endl;
}
return 0;
} 출력
Division by zero condition!
위의 프로그램에서 함수 display()는 인수 x와 y로 정의됩니다. x 나누기를 y로 반환하고 오류가 발생합니다.
int display(int x, int y) {
if( y == 0 ) {
throw "Division by zero condition!";
}
return (x/y);
} main() 함수에서 try catch 블록을 사용하여 catch 블록에서 오류를 잡아내고 메시지를 출력합니다.
try {
c = display(a, b);
cout << c << endl;
} catch (const char* msg) {
cerr << msg << endl;
}