On this page |
VEX関数も参照してください。VEXでの作業のほとんどが関数コールです。ステートメントのほとんどがループの構築で、これはC言語などの他の言語に似ています。print
はいくつかの言語(例えば、Python)のステートメントであるのに対し、VEXではprintf関数を使って画面出力します。
{} ¶
C言語や他の多くの言語と同様に、中括弧({
)で複数のステートメントを閉じることで、それらをブロックとして定義することができます。
例えば、if
ステートメントは、以下のように1行のステートメントを実行したり:
if ( needs_zapping() ) zap()
以下のように中括弧内のブロックを実行することができます:
if ( needs_zapping() ) { zap() disintegrate() remove_dust() }
doループ ¶
do statement [while (condition)]
最初にstatementを実行した後に、conditionがtrueならループします。while
やdo
とは違って、最低1回はstatementを実行することが保証されています。
forループ ¶
for (init; condition; change) statement
標準のC言語スタイルのfor
ループ。initステートメントを実行した後に、conditionがtrueの間は、statementの実行の後にchangeステートメントを実行するという繰り返しを行ないます。
foreachループ ¶
foreach (value; array) statement
foreach (index; value; array) statement
arrayのメンバー毎にstatementを実行します(オプションでindexを配列の現行位置に設定します)。foreachを参照してください。
whileループ ¶
while (condition) statement
conditionがtrueの間は、statementを繰り返して実行します。
他のループステートメント ¶
forpoints、illuminance、gatherのステートメントは、VEXで処理されているデータをループすることができます。
if ¶
if (condition) statement_if_true [else statement_if_false]
conditionがtrueならstatement_if_trueを実行します。
else
の句も記述していれば、conditionがfalseならstatement_if_falseを実行します。
return ¶
任意の戻り値付きで関数を終了します。
int max(int a, b) { if (a > b) { return a; } return b; }
break ¶
break
は即座にループを抜けます。これは、if
ステートメントと併用して、ある条件に到達した時に早くループを停止させたい時に役立ちます。
for (int i = 0; i < sizes; i++) { mixamount += getAmount(roughness); if (mixamount > 1) { break; } }
continue ¶
continue
は、ループの次の繰り返しに直ぐにジャンプします。
foreach (x; myarray) { if (x < 10) continue; ... }