{
책에선 이런 말을 했다. "이웃집 정원에 돌은 던져서는 안 된다".. ㅋ
그렇다면 돌에 비유되는 예외 : exception 는 무엇인가?
예외는 오류 객체이다.
여기서 말하는 모듈이란 무엇인가?
다른 컴파일러, 다른 운영체제에서 컴파일된 실행파일, DLL, so, a 등을 뜻한다.
이 모듈의 경계를 넘어서 예외가 절달되는 것을 왜 막아야 하는가?
C++ 에선 예외 전달 방식의 표준을 정해 놓지 않았다. 그래서 컴파일러 마다 운영체제 마다 예외 전달 방식이 다르다. 그래서 서로 다른 모듈간에 예외를 교류시키는 코드가 들어갈 경우, 예견되지 못한 상태에 빠질 수 있다.
책에선 예외를 잡기 위해서 catch(...) 블록을 쳐야 하는 최소한의 부위를 알려 주지만, 모듈간의 예외를 교류를 사용 하지 않거나, 소스코드를 이용한 해당 플랫폼 재컴파일, 라이브러리 제작자가 제공하는 여러 플랫폼 라이브러리 등을 사용하면 문제 되지 않는다.
그러므로 패스!
}
최근댓글