FreeBASIC マニュアルのトップに戻る

FreeBASIC OpNext

目次演算子反復演算子Operator Next (Iteration)←オリジナル・サイト

演算子 Next (繰り返し) 左にメニュー・フレームが表示されていない場合は、ここをクリックして下さい


For...Next ループが終えられるべきかどうかを、決定します。

構文:
{ Type | Class | Union } typename
declare 演算子 Next ( [ byref | byval ] cond as typename ) as Integer
declare 演算子 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 ループの反復子と増分値として 使えるようにするために、多重定義することができます。
すべての非静的メンバー手続きとして、これらは、3つの演算子のコード本体の、反復子オブジェクトへの参照によってアクセスできる、非表示の this パラメーターを渡しました。

演算子 Next は、反復子オブジェクトを終了値と照合する必要があるたびに、呼び出されます。
これは、演算子 For の呼び出し直後、および 演算子 Step の呼び出し直後に発生します。
演算子 Next は、ループを終了する必要がある場合は 0(ゼロ)を返し、繰り返しを続ける必要がある場合はゼロ以外を返します。
演算子 Next が初めて呼び出されたとき、For...Next 中の命令文は、まだ実行されていません。

For...Next 命令文で、step 値が指定されていない場合は、演算子 Next の最初の構文が使われます。
step 値が指定されている場合は、2番目の構文が使われます。繰り返し終了のテストの判断に使うため、step 値が渡されます。

高度な使用法
上の説明は、3つの引数 start_value, end_value, step_value反復子 と同じ型でなければならない(これは明白な使用法です)ことを暗示しているようですが、完全に真実とはかぎりません:
- start_value, end_value, step_value 引数は、任意の型にすることができます(それらの間で異なる型で、反復子 の 1つと異なる型も可能です)。
- 唯一の制約は、反復子 は、start_value 引数から構築(ローカル 反復子 の場合)するか割り当てる(グローバル 反復子 の場合)ことです。(反復子 は暗黙的に構築または内部で割り当てられるためです。)
- 同様に、他のパラメーター end_valuestep_value は、反復子 と同じ型のオブジェクトに変換できる必要があります。

例:
演算子 Step の例を参照ください。

方言差:
参照:
反復演算子 に戻る
演算子 に戻る
←リンク元に戻る プログラム開発関連に戻る

ページ歴史:2020-10-13 02:59:47
日本語翻訳:WATANABE Makoto、原文著作者:LaananFisher

ホームページのトップに戻る

表示-非営利-継承