Hatena::ブログ(Diary)

新言語 Xtalを作る日記

2006-10-10

バグの修正とテストスクリプトを黙々と書いてます。

多値 01:06  多値を含むブックマーク

関数は2個以上の値を返すことが出来ます。

多重変数定義か多重変数代入で複数の値を受け取ることが出来ます。

左辺の方が多い場合、足りないところはnullが代入されます。

右辺の方が多い場合、余った値は切り捨てられます。

 foo : fun(){ return 5, 8; }
 bar : fun(){ return 10; }

 // 多重変数定義
 a, b : foo();

 println(a); // 5
 println(b); // 8

また、多重変数代入を使うと変数スワップは次のように書けます。

 a, b : 1, 2;
 println(a); // 1
 println(b); // 2

 a, b = b, a;
 println(a); // 2
 println(b); // 1