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

FreeBASIC OpFor

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

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


ユーザ定義型の変数で、For...Next ループで使う演算子を、宣言、または定義します。

構文:
{ Type | Class | Union } typename
declare 演算子 For ()
declare 演算子 For ( [ byref | byval ] stp as typename )
...

End { Type | Class | Union }

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

パラメタ:
(引数を含む)
typename
, クラス, ユニオン の名前
stp, step_value
増分の値として使用される typename オブジェクト
iterator
反復子 (繰返子:くりかえし) として使用される typename オブジェクト
end_value
繰返しを終える値として使用される typename オブジェクト
start_value
typename オブジェクトで、反復子の初期値に、構造物をコピーするか、割り当てるために使われます。

記述:
演算子 For, 演算子 Next, 演算子 Step は、ユーザ定義型の定義で、ユーザ定義型のオブジェクトを、For...Next ループの反復子と増分値として使用できるようにするために、多重定義することができます。
すべての非静的メンバー手続きとして、これらは、3つの演算子のコード本体の、反復子オブジェクトへの参照によってアクセスできる、非表示の this パラメーターを渡しました。

演算子 For は、反復子オブジェクトに、コピーの構築またはの割り当て後に一度呼び出され、オブジェクトが、ループの準備に必要な追加の初期化を行えるようにします。

For...Next 命令文で、ステップ値が指定されていない場合は、上段の構文の 演算子 For が使われます。
ステップ値が指定されている場合は、下段の構文が使われ、結果として起こる追加の初期化で使うため、ステップ値が渡されます。

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

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

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

ページ歴史:2020-10-13 03:01:17
日本語翻訳:WATANABE Makoto、原文著作者:JeffMarshall

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

表示-非営利-継承