- Swiftスレ
408 :デフォルトの名無しさん[sage]:2014/06/05(木) 21:51:22.48 ID:qTkh2drY - swiftのarrayってlet&unshareで使うのがいいのかな??
appendした後の挙動がバグ臭プンプンする。
|
- Swiftスレ
411 :デフォルトの名無しさん[sage]:2014/06/05(木) 22:23:42.09 ID:qTkh2drY - >409
“Assignment and Copy Behavior for Arrays”を読んで欲しいんだけど、 var listA = [1,2,3] var listB = listA listB[0] = 9 ってするとlistA[0]も9になってる。 まぁこれは普通だよね。 だけどこのあと listA.append(4) って要素数が変わる操作をしたら listA[1] = 22 ってしても listB[1] は2のまま。 分かっててもミスりそう。
|
- Swiftスレ
415 :デフォルトの名無しさん[sage]:2014/06/05(木) 22:42:40.01 ID:qTkh2drY - >>413
arrayもdictionaryもstructureなんだからdictionaryの動作が正しいよね。きっと。 arrayのはパフォーマンス上げるためなんだろけどunshareを標準にして欲しい。 >>412 >要素追加した瞬間にcopyされて別物か? 明日試してみるよ
|
- Swiftスレ
418 :デフォルトの名無しさん[sage]:2014/06/05(木) 22:54:34.73 ID:qTkh2drY - あとarrayをループさせる時はfor - in より for var i = 0;i < array.count;++
でループさせて array[i] で参照したほうが20%ほど早かった。 この辺もobjective-cと違うよね。
|
- Swiftスレ
421 :デフォルトの名無しさん[sage]:2014/06/05(木) 23:07:49.74 ID:qTkh2drY - >>420
同意!!
|