1
타입이 의미를 말하는가
숫자 코드보다 std::runtime_error나 도메인 예외를 고릅니다.
복구 코드가 실패 원인을 읽을 수 있어야 합니다.
좋은 예외 설계는 던지는 타입, 잡는 방식, 자원 정리, catch 순서가 같은 방향을 보게 만드는 일입니다.
숫자 코드보다 std::runtime_error나 도메인 예외를 고릅니다.
포인터 예외는 소유권을 흐리게 만듭니다.
catch (const std::exception& e)는 복사와 slicing을 피합니다.
파일, 락, 메모리는 스택 풀림 중 소멸자에서 닫혀야 합니다.