본문 바로가기
[ C++ ]/- C++ 문법정리

C++ 28 [예외처리]

by MRG 2023. 5. 12.
728x90
반응형

https://learn.microsoft.com/ko-kr/cpp/cpp/exception-handling-in-visual-cpp?view=msvc-170 

 

MSVC의 예외 처리

C++ 언어 참조 예외 처리 개요입니다.

learn.microsoft.com

 

 

 

▣ 예외처리 : 예외 발생 시 대처하는 코드

 

▣ try : 예외를 감지하고, main() 함수 전체를 포함할 수 있다.

 

▣ throw : 예외가 발행했을 때 예외 발생을 알리고 던지는 코드

 

▣ catch : 예외를 받아 처리하는 블록 코드

 

 

▣ catch (const char *s) : 문자열을 받아서 처리 가능

 

▣ throw : 던지는 예외 값의 타입과 일치하는 catch() 블록 실행

 

▣ try {} 블록에는 반드시 1개 이상의 catch() 블록이랑 연결되어 있어야 한다. 

 

▣ throw에 의해 던져진 예외를 처리할 catch() 블록이 없으면 강제 종료 된다.

 

▣ try()는 중첩 가능

 

▣ try()를 중첩으로 코드를 작성하고 throw로 던지게 되면 try(), catch()에 맞는 곳에 던진다.

 

▣ void divide(double num1, double num2) throw(double, double)처럼 함수원형 옆에 throw()를 두면 함수가 발생시킬 수 있는 예외 타입을 알려준다.

 

https://learn.microsoft.com/ko-kr/cpp/cpp/exception-specifications-throw-cpp?view=msvc-170 

 

예외 사양(throw, noexcept)(C++)

자세한 정보: 예외 사양(throw, noexcept)(C++)

learn.microsoft.com

 

728x90
반응형

'[ C++ ] > - C++ 문법정리' 카테고리의 다른 글

C++ 30 [Manipulator 조정자]  (2) 2023.10.03
C++ 29 [스마트 포인터]  (0) 2023.05.16
C++ 27 [파일입출력]  (2) 2023.05.09
C++ 26 [포맷플래그 입출력]  (0) 2023.05.03
C++ 25 [람다 표현식]  (0) 2023.04.28

댓글