- Swiftスレ
377 :デフォルトの名無しさん[sage]:2014/06/05(木) 18:01:35.29 ID:Ss1X6IjI - 例えばこんなワンライナーで
var a = rand() var b, c: Int? b = a % 20 > 10 ? 10 : 20 c = a > 10 ? b : b! + 20 ぱっと見で瞬時にセンテンスの区切りが分かるならセミコロンはいらんだろうな
|
- Swiftスレ
379 :デフォルトの名無しさん[sage]:2014/06/05(木) 18:15:14.57 ID:Ss1X6IjI - 複数行に1statementの時に終わりが分かりにくいってことはないと思うぞ
そんなに分かりにくかったら空行なりいれればいいわけだし
|
- Swiftスレ
400 :デフォルトの名無しさん[sage]:2014/06/05(木) 20:25:51.95 ID:Ss1X6IjI - var i: Int? = 10
if i { println("i = \(i)") } はオッケー var i: Int = 10 if i { println("i = \(i)") } はアウト〜
|
- Swiftスレ
407 :デフォルトの名無しさん[sage]:2014/06/05(木) 21:20:07.46 ID:Ss1X6IjI - 憶測が多いな
別にletじゃなくてvarでもいいんだけど var a: Int? = 10 if var b = a { println("b = \(b)") }
|
- Swiftスレ
413 :デフォルトの名無しさん[sage]:2014/06/05(木) 22:33:26.53 ID:Ss1X6IjI - >>411 ディクショナリだとまた挙動が違うんだよな
var dictA = [0:1, 1:2, 2:3] var dictB = dictA dictA[0] = 9 ってやると、dictA[0]は9になるけど、dictB[0]は1のまま
|
- Swiftスレ
424 :デフォルトの名無しさん[sage]:2014/06/05(木) 23:15:46.09 ID:Ss1X6IjI - とりあえず、配列にはcopy()とunshare()があることを意識しといた方かよさそう
あと関数の引数に配列を渡して操作するきは、inout付きにした方がいいのかな
|
- Swiftスレ
427 :デフォルトの名無しさん[sage]:2014/06/05(木) 23:21:06.13 ID:Ss1X6IjI - var array1 = [1,5,7,4]
var array2 = array1.copy() array2.sort(>) 若しくは、 var array1 = [1,5,7,4] var array2 = array1 array1.unshare() array2.sort(>) とか
|
- Swiftスレ
432 :デフォルトの名無しさん[sage]:2014/06/05(木) 23:51:31.90 ID:Ss1X6IjI - 配列みたいなコピーコストの高いやつはデフォルト同じやつ参照でいいんだが
ディクショナリは代入した時点でコピーしちゃうみたなんで、おいそれと代入しにくいな 配列よりむしろディクショナリの挙動の方が気になる
|