Resume Next
 
Оператор , который при обработке ошибок возобновляет выполнение после прыжка в обработчик ошибок

Синтаксис

Resume Next

Описание

Resume Next используется в традиционной механизме обработки ошибок QB . При вызове обработчика ошибок (вызов On Error) , он возвращает выполнение к следующей линии после линии, вызвавшей ошибку. Обычно это используется, чтобы избежать выполнения той же линии и повтора ошибки.

Resume Next сбрасывает значение Err в 0

Пример

'' Компилировать с опцией -lang fblite или -lang qb

#lang "fblite"

Dim As Single i, j

On Error Goto ErrHandler

i = 0
j = 5
j = 1 / i эта линия вызывает ошибку деления на ноль; выполнение переходит к линии ErrHandler

Print "ending..."

End завершаем программу, чтобы выполнение снова не попало в обработчик ошибок

ErrHandler:

Resume Next ' выполнение переходит на линию 'Print "ending..."' , но j сейчас находится в неопределенном состоянии


Различия диалектов

  • RESUME NEXT не поддерживается в диалекте -lang fb. Операторы могут использоваться в виде функции для возврата кода ошибки
If Open( "text" For Input As #1 ) <> 0 Then
  Print "Unable to open file"
End If



Отличия от QB

  • Необходимо компилировать с опцией -ex

См. также