Call
call 制御ステートメントは、事前に sub ステートメントで定義されているサブルーチンを呼び出します。
構文:
Call name ( [ paramlist ])
引数:
引数 | 説明 |
---|---|
name | サブルーチンの名前。 |
paramlist | サブルーチンに送られる実パラメータのコンマ区切りのリスト。リスト内の各項目は、項目名や変数名、任意の数式です。 |
call ステートメントで呼び出されるサブルーチンは、スクリプトの実行中に先に出現する sub ステートメントで定義される必要があります。
パラメータはサブルーチンにコピーされます。call ステートメントのパラメータが数式ではなく変数の場合、パラメータはサブルーチンが終了したときにコピーして戻されます。
制限事項:
call ステートメントは、制御ステートメントであり、セミコロンまたは改行コードで終わるため、行をまたぐことはできません。
例1:
// Example 1
Sub INCR (I,J)
I = I + 1
Exit Sub when I < 10
J = J + 1
End Sub
Call INCR (X,Y)
例2:
// Example 2 - List all QV related files on disk
sub DoDir (Root)
For Each Ext in 'qvw', 'qvo', 'qvs', 'qvt', 'qvd', 'qvc'
For Each File in filelist (Root&'\*.' &Ext)
LOAD
'$(File)' as Name, FileSize( '$(File)' ) as
Size, FileTime( '$(File)' ) as FileTime
autogenerate 1;
Next File
Next Ext
For Each Dir in dirlist (Root&'\*' )
Call DoDir (Dir)
Next Dir
End Sub
Call DoDir ('C:')