throw
EGL throw 문은 트리거할
예외를 지정합니다. 그러면 다음과 같은 영향을 미칩니다.
- 프로그램 처리 중지
- try 블록에서 예외가 처리되는 경우 해당 try 블록 내에서 첫 번째 적합한 onException 블록에 제어를 전달합니다. 자세한 내용은 try의 내용을 참조하십시오.
- try 블록에서 예외가 처리되지 않는 경우에는 프로그램이 종료되고 지정된 예외 레코드에 메시지가 기록됩니다.
throw 문을 사용하여 예외 표현식(예외 변수의
유형으로 해석되는 표현식, 예외 스테레오타입 참조)을 지정하십시오.
이와 같은 표현식에서 사용할 수 있는 두 가지 양식은 다음과 같습니다.
// when the exception is already defined
nullEx NullValueException;
...
throw nullEx;
// define and declare
Record CustomerException type Exception
customerNumber INT;
end...
throw new customerException {
customerNumber = custNum,
message = "Illegal customer number" };
예외는 오류 지점에서 위로 전파됩니다. try 문은 중첩 깊이에 관계 없이 try 블록에서 호출된 모든 함수에서 발생하는 예외를 처리할 수 있습니다. 예외 핸들링 프로세스에 대한 자세한 정보는 예외 핸들링의 내용을 참조하십시오.
구문

- exceptionExpression
- 값의 유형이 예외 변수의 유형과 같은 표현식입니다.
호환성
| 플랫폼 | 문제 |
|---|---|
| V6 예외 호환 모드 | v60ExceptionCompatibility 프로그램 특성이 YES로 설정된 경우 throw 문이 올바르지 않습니다. |