8항목 9항목 10학목까지 오면서 익혔던 개념들에 대하여, 정리를 해 보는 코너이다.
1. 중요한 예외 안전에 관한 보증은 무엇인가?
2. 막 구현한 Stack<T>에서, 포함하는 T의 필수사항은 무엇인가?
답
1. 답이라고 할것 까진 없지만, 의미상 그렇다는 뜻이다. (Effective C++ 을 보게 되면, 정리된것이 나와 있으니
자세한것은 그것을 참고 하도록)
기본 보증 : 예외가 있어도 Stack 개체의 자원에 피해가 가지 않는다.
강한 보증 : 예외에 의해 연산이 중단되도, 프로그램
상태는 바뀌지 않는다.
완벽 보증 : 어떠한 상황에서도 예외를 발생시키지 않는다.
아무리 못해도 기본 보증은 있어야 된다고 본다.
2.
T::T 기본 생성자
T::T(const T& rhs) 복사 생성자
T&
T::operator=(const T& rhs) 복사 할당자 - 예외에 안전한~
T::~T 에서 어떤 예외를 던지지
않는다.
operator new[]() 와 operator delete[]() 오버로드시 C++ 규정에 따른다.
총평
쉬어가기 코너라고 볼수 있겠다.
'책 정리 > Exceptional C++' 카테고리의 다른 글
항목 41 : 개체 활동 주기 - 파트 2 (난이도 : 6) (0) | 2008.10.08 |
---|---|
항목 40 : 개체 활동 주기 - 파트 1 (난이도 : 5) (0) | 2008.10.08 |
항목 39 : 자동 변환 (난이도 : 4) (0) | 2008.10.08 |
항목 38 : 개체의 정체(Object Identity) (난이도 : 5) (0) | 2008.10.08 |
항목 12 : 예외에 안전한 코드를 작성하기 - 파트 5 (난이도 7) (0) | 2008.10.07 |
항목 10 : 예외에 안전한 코드를 작성하기 - 파트 3 (난이도 9½) (0) | 2008.10.07 |
항목 9 : 예외에 안전한 코드를 작성하기 - 파트 2 (난이도 8) (0) | 2008.10.07 |
항목 8 : 예외에 안전한 코드를 작성하기 - 파트 1 (난이도 7) (0) | 2008.10.07 |
예외에 안전한 코드에 대한 생각을 하게된 폭팔적인 계기 (0) | 2008.10.07 |
항목 18 : 코드 복잡성 - 파트 1 (난이도 9) (0) | 2008.10.06 |
최근댓글