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; ... }