2011-08-01 2 views
0

가능한 중복 :
In C++ what are the benefits of using exceptions and try/catch instead of just returning an error code?시도/캐치

내가 시도를 사용 & 단점 프로에게의/VS 오류 코드를 반환 캐치 궁금 무엇입니까?

나는 항상 C++에서 try catch를 사용하도록 권장해야합니까?

프로젝트에서 반환 오류 코드를 사용하고 있습니까? 그렇다면 왜?

+0

예,이 주제에 대한 질문은 이미 많이 있습니다. [예외 대 오류 코드 대 주장] (0120-558-2115)/ – crashmstr

+0

모든 링크를 가져 주셔서 감사합니다. Google 검색을 통해 다음 번에 검색 할 예정입니다. – Gob00st

답변

0

프로그램의 잘못된 기능에 오류 코드를 사용하고 프로그램이 중단 될 것으로 예상되는 곳에서 잡으십시오. try/catch 블록은 보통 프로그램을 느리게 실행합니다. 코드에서 오류가 의심되는 경우 예외를 throw하는 대신 오류 코드를 확인하고 반환하는 것이 좋습니다.

+1

오류 코드를 확인하면 프로그램이 확인하지 않는 것보다 느려집니다. – Nobody

+1

이것은 좋지 않습니다. 일반적인 조언. 오류 코드와 예외를 목적에 맞게 사용하십시오. 특히 기본 오류 처리 정책 (기본적으로 무시/기본적으로 전파)은 중요합니다. 다른 이점으로는 시스템 전반에 적용되는 오류 코드의 응용 프로그램 차원의 고유성 등이 있습니다. –

0

try/catch는 반환 값을 해석하는 것보다 오버 헤드가 크지 만 반환 값이 더 큰 유연성을 제공합니다. 나는 일반적으로 둘 다 사용, 제 3 자 라이브러리에 따라 사용합니다.

+0

실제로 성능이 중요한 경우 try/catch 블록은 엄격한 루프에서 피해야합니다. 그러나 RAII를 사용하는 C++ 응용 프로그램은 try/catch 블록이 거의 필요하지 않으므로이 "성능 적중률"은 종종 높은 수준이므로 무시할 수 있습니다. –