728x90
반응형
https://learn.microsoft.com/ko-kr/cpp/cpp/exception-handling-in-visual-cpp?view=msvc-170
▣ 예외처리 : 예외 발생 시 대처하는 코드
▣ 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
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 |
댓글