var x = 1; def main(args: Array[String]) { x = 1; notdelayed(x*2); x = 1; delayed(x*2); } def notdelayed(value : Int) { x = 100; println("notdelayed: " + value) } def delayed(value : => Int) { x = 100; println("delayed: " + value) x = 200; println("delayed: " + value) } -------------------- notdelayed: 2 delayed: 200 delayed: 400
● 2013年2月2日土曜日 - | [Scala] 名前渡し |
2013年2月2日土曜日
[Scala] 名前渡し
Scala で関数を定義する際、仮引数名と型名の間に 「 => 」を記載すると名前渡しとなり、値が必要になったときに式の値が評価される。
ラベル:
Programming,
Scala,
遅延評価,
名前渡し
登録:
投稿 (Atom)