Оператор Next (Итерация)
 
Определяет, когда цикл For...Next должен быть прекращен

Синтаксис

{ Type | Class | Union } typename
Declare Operator Next ( [ ByRef | ByVal ] cond As typename ) As Integer
Declare Operator Next ( [ ByRef | ByVal ] cond As typename, [ ByRef | ByVal ] stp As typename ) As Integer
...
End { Type | Class | Union }

Использование

For iterator [ As typename ] = start_value To end_value [ Step step_value ]
[ ...statements... ]
Next

Параметры

typename
имя Type, Class, или Union
cond, end_value
объект typename , используемый в качестве значения завершения цикла
stp, step_value
объект typename , используемый как значение приращения
iterator
объект typename , используемый как итератор
start_value
объект typename , используемый для копирования конструкции или присваивания итератора первоначально

Описание

Оператор For, Оператор Next и Оператор Step могут быть перегружены в определяемых пользователем типах, чтобы позволить объектам этого типа использоваться в качестве итераторов и значений шага в циклах For...Next.

Оператор Next вызывается каждый раз, когда итератор должен проверяться на конечное значение. Это происходит сразу же после вызова Оператора For, и сразу же после любого обращения к его Оператору Step. Оператор Next должен вернуть ноль (0), если цикл должен быть прекращен, или не равен нулю, если цикл должен продолжать итерации. В первый раз Оператор Next вызывается без заявлений в теле For...Next, если они имеются, они будут выполнены.

Первая версия Оператора Next используется, если не установлен шаг в заявлении For...Next. Если шаг задан, вторая версия используется и передается значение шага.

Пример

Смотрите пример Оператор Step.

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

  • Только доступно в диалекте -lang fb.

См. также