항목 73 : 예외를 발생시킬 때에는 값으로 하고, 잡아낼 때에는 참조로 하라. ( Throw by value, catch by reference. )
{ 개요 이번 포스팅은 예외를 발생시키는 좋은 예와 잡아낼 때 좋은 예를 정리하는 것에 그 목적을 두고 있다. 본문 예외는 어떻게 발생 시킬 수 있는가? 예외는 try 구문 내에서 throw a; 형태로 발생 시킬 수 있다. 이 때 a 는 어떠한 타입도 가능하다. 즉, 포인터,기본형, 객체형이 가능하다는 뜻이다. 이렇게 발생된 예외는 어떻게 잡을 수 있는가? catch 구문을 통해서 잡을 수 있다. 다음과 같이 catch( int a ) 형태 이다. 위의 a가 int 형이라면 잡을 수 있다. 만약 int 형이 아니라면, 잡을 수 없고 try catch 구문 밖으로 예외는 자동으로 나가게 된다. 예) #include int main( void ) { try { throw "abcdefg\n"; std::c..
책 정리/C++ Coding Standards : C++ 코딩의 정석
2009. 5. 2. 13:20
최근댓글