トップページ > プログラム > 2014年06月05日 > Ss1X6IjI

書き込み順位&時間帯一覧

8 位/289 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000000002011138



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
Swiftスレ

書き込みレス一覧

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
配列みたいなコピーコストの高いやつはデフォルト同じやつ参照でいいんだが
ディクショナリは代入した時点でコピーしちゃうみたなんで、おいそれと代入しにくいな
配列よりむしろディクショナリの挙動の方が気になる


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。