항목 17 : 생성자 실패 Part 1 : 객체의 수명 (난이도 : 4)
이번 항목은 생성자에서 어떻게 예외가 발생 될 수 있으며, 생성자에서 예외가 발생한것이 어떤 의미인지 살펴 보는 항목이다. 예제 코드 // 예제 1 class C : private A { B b; }; // 예제 2 { C c; } 질문 1. 예제 1에서 생성자에서 예외가 발생하면 어떻게 잡을 수 있을까? 질문 2. 예제 2에서 객체의 수명을 설명 할 수 있는가? 해설 1. 예외 발생 어떻게 잡을 수 있는가? 질문에 대해서만 답하자면, 예외를 잡기 위해서 try catch 문을 사용 해야 할것이다. 코드로 옮기자면, // 예제 1 class C : private A { public: ~C() { } C() try : A() , b() { } catch( ... ) { } private: B b; }; 이..
책 정리/More Exceptional C++
2008. 12. 2. 12:22
최근댓글