옥타브에는 오류를 정정하는 여러 방법이 있습니다.
try
/catch
구역,
unwind_protect
/unwind_protect_cleanup
구역 마지막으로 onCleanup
명령이 있습니다.
onCleanup
명령은 일반적으로 옥타브 변수(방아쇠)와 임의 함수(작동)를 잇습니다. 옥타브 변수가 함수
반환, 오류, clear
로 지워짐 따위로 사라지면, 할당한 함수를 실행합니다.
이 함수는 열린 기록철 다루개 닫기, 오류 문구 출력, 전역 변수를 초기값으로 초기화 등 정리에 필수적인 모든 작업을 할 수 있습니다. 아래 예시는 옥타브 부호에서 아주 편리한 예시입니다. 예시:
function rand42 old_state = rand ("state"); restore_state = onCleanup (@() rand ("state", old_state)); rand ("state", 42); … endfunction # rand generator state restored by onCleanup
지워지면 주어진 함수를 실행하는 특수 객체를 만듭니다.
객체를 여러 변수(또는 낱칸 배열이나 구조체 배열의 원소)에 복사하거나 함수가 반환하면, 함수를 객체의 마지막 사본이 지워질 때 실행합니다. 울안 onCleanup 변수를 여러 개 만들면, 호출 순서는 정해지지 않습니다. 비슷한 함수를 보려면, 비보호 시행문을 보십시오.