Functions
プログラムを作る時に、プログラムのある部分で同じ手順を繰り返す場合があります。sdlBasicでは、1回の手順連続をかけば、同じ手続きをプログラムのあらゆる部分からそれを呼び出すことができます。
ファンクションの中で使われる変数はローカル変数で、それらはメイン・プログラムの中で、またはどのような他のファンクションの中の同じ名前の変数に、影響しないであろうということを意味しています。これは配列でも同じです。
詳細についてGlobal Shared Dimの項を見てください。
ファンクションには、処理すべき情報を含むパラメータのリストを引き渡すことができます。
パラメータリストが必要でないファンクションは、ブラケットなしでメイン・プログラムから呼びだすことが出来ます。
から 機能は、帰りのステートメントによって指定されて、オプションで値を戻すことができます。オプションとしての戻り値は、Return statementで指定してください。
BASICの標準方式に加えて、sdlBasicは戻り値のステートメントをCから借りています:
function add( a, b )
add = a
+ b
end function
また次のように書くことができます:
function add( a, b )
Return a
+ b
end function
sdlBasicはreturnのステートメントのあと、ファンクションからでます。
以下のステートメントによってもファンクションを呼ぶことができます:
newSumm= add( 3, 4)
この例においては、変数のnewSummはbuyのfunctionから戻ったとき戻り値として7が設定されるでしょう。
単純にfunctionの結果を無視し、サブルーチンのようにそれを扱うことにもできます:
' Ignore the return value of Len()
len("123")
戻り値は失われるます。
function名はプログラム中の同じスコープのなかの変数または配列の名前と同じであってはいけません。
これは、以下のコードを使うことができないのを意味しています:
myVariable = 1
function myVariable()
...
end function
しかし、これは許されます:
function myFuntion()
myVariable=1
end function
function myVariable()
...
end function