[C++] Try / Catch _2

C++/Tips / / 2021. 6. 24. 11:32

+ 기본 개념을 확인하려면 다음 링크 확인

https://merry-nightmare.tistory.com/203

 

[c++]Try / Catch

=> 예외처리를 위한 문법으로써, 내가 의도하지 않은 결과가 출력되었을 때 예외처리를 통하여 다른 출구로 나가게 하는 방법을 말함 => If문을 사용하는 방법도 물론 존재하지만, 이는 예외처리

merry-nightmare.tistory.com

1. Try

=> 예외를 즉시 처리하기 위하여 Try block 사용

=> Block Syntax

=> Function Syntax

#include<iostream>
using namespace std;

int main()
{
	try
    {
    	//code
        if() // 예외에 대한 조건
        {
        	throw res; // 던질 예외값
		}
    }
    catch(Exception expn) // res 수신, Exception은 자료형이 될 수 도 있음
    {
    	// exception
    }
}

=> nested try catch(중첩 t/c문)

// 이중 try-catch
void function()
{
	try
    {
        try
        {
        	//code(throw)
        }
        catch(exception& a)
        {
        	//handling
            throw;
        }
    }
    catch(exception& b)
    {
    	//handling
    }
}
//이중 catch
void function()
{
	try
    {
    	//throw exceptionA
        //throw exceptionB
    }
    catch(ExceptionA a)
    {
    	//handling
    }
    catch(ExceptionB b)
    {
    	//handling
    }
}

 

2. Catch

=> void* / const void* / volatile void* / const volatile void* / 추상클래스 / 불완전한 유형 / C+11 rvalue 이외에 사용 가능

=> catch(...)를 통하여 이전 catch에 의해 탐지되지 않은 모든 예외 탐지 가능

'C++ > Tips' 카테고리의 다른 글

[C++] initialization  (0) 2021.07.09
[C++] Compilation Process  (0) 2021.06.25
[C++] Predefined Macro  (0) 2021.06.23
[C++] 가변인자[variable argument]  (0) 2021.06.22
[C++] New_2  (0) 2021.06.21
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기