Programmer's Note

コード読み書きの備忘録。

Swift

Swiftで関数の配列をつくる

Cでも関数のポインターの配列というのをつくれるが、Swiftでどう書くか試してみる。もっとも単純なもの: func func1() { println("Hello 1") } func func2() { println("Hello 2") } let fa:[()->Void] = [func1, func2] fa[0]() fa[1]()これはうまく行った…

SwiftのOptional型の動作を確かめてみる

SwiftのOptional型について。 いろんなサイトで解説されているが、自分でもやってみて理解する。 ここが分かりやすい: [Swift] Optional 型についてのまとめ Ver2 - Qiita (1) Optioanlでない通常の変数の宣言 var a:Int println(a) 値を代入しないと、コン…

Swiftの関数渡しのテスト

Swiftの関数渡しをテスト。以下、javascriptっぽく書いた場合。 func sequence( f:(Int,Int)->Void) { for var i = 0; i < 10; i++ { f(i,i+1) } } let x = 10; sequence({ a,b in println("a=\(a+x), b=\(b+x)") }) 渡す先の関数の最後の引数の場合は、無名…

Swiftでクロージャのテスト

Swiftでクロージャのテスト。WebブラウザからSwiftの動きを確かめられる以下のサイトを利用; SwiftStub: Online Swift Compilerコード: func FuncGenerator() -> (Void -> Int) { var a = 0; func add() -> Int { return a++ } return add } var f_add = F…