Catch [v1.1.04+]

try서술문의 실행 중에 예외가 일어나면 실행할 코드를 지정합니다.

Catch , OutputVar
    Statement
Catch , OutputVar
{
    Statements
}

매개변수

OutputVar

(Optional) The name of the output variable in which to store the value of the exception.

Statement(s)

예외가 일어나면 실행할 명령어 또는 표현식.

논평

catch가 사용되면 바로 위 try 서술문에 종속됩니다. catch는 언제나 바로 위 가장 가까운 try 서술문에 속합니다. 단, 블록을 사용하여 그 행위를 바꿀 수 있습니다.

One True Brace (OTB) 스타일을 선택적으로 사용할 수 있습니다. 예를 들어:

try {
    ...
} catch e {
    ...
}

실행시간 에러

try-catch 서술문은 실행 시간 에러를 처리하는 데에도 사용할 수 있습니다. 두 가지 종류의 실행시간 에러가 있습니다: 보통 ErrorLevel을 설정하는 에러와, 보통 에러 메시지를 보여준 후에 현재 쓰레드를 종료시키는 에러가 있습니다. 적재시간 에러는 처리가 불가능합니다. 왜냐하면 try 서술문이 실행되기 전에 일어나기 때문입니다. 하위 호환을 위해 (그리고 어떤 경우는 편의를 위해), 실행시간 에러는 try 블록이 실행되는 동안 오직 예외만 던집니다. 대부분의 명령어는 try-catch의 사용을 지원합니다; 그렇지만, ErrorLevel은 명령어가 성공하면 여전히 0으로 설정됩니다.

OutputVar에 저장된 값은 (존재하면) 예외 객체입니다.

Catch, Throw, Finally, 블록, OnError()

예제

Try 참조.