トップページ > プログラム > 2014年08月17日 > V8SXHhEt

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

12 位/186 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000401000000005



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

書き込みレス一覧

Swift part3
81 :デフォルトの名無しさん[sage]:2014/08/17(日) 13:19:14.20 ID:V8SXHhEt
無限ループこわい

struct S {
var a: Int = 0 {
didSet {
println("a did set: ¥(a)")
b = a + 1
}
}
var b: Int = 0 {
didSet {
println("b did set: ¥(b)")
a = b + 1
}
}
}

var s = S(a: 0, b: 0)
s.a = 1

a did set: 1
b did set: 2
a did set: 3
b did set: 4
a did set: 5
b did set: 6
a did set: 7

Swift part3
82 :デフォルトの名無しさん[sage]:2014/08/17(日) 13:26:01.14 ID:V8SXHhEt
>>80
上は Foundation.NSDictionary になるからダメ
下は Swift.Dictionary<String, Any> だからおk

ちな
var d = ["a": 10, "b": "BBB"].mutableCopy()
d.setObject("123", forKey: "C")
println(d.description)

{
C = 123;
a = 10;
b = BBB;
}

NSMutableDictionaryにしてもSwiftのsubscript持ってないから使いにくいね
Swift part3
83 :デフォルトの名無しさん[sage]:2014/08/17(日) 13:29:48.59 ID:V8SXHhEt
あ、勘違い
NSMutableDictionary でも subscript 使えたわw

var d = ["a": 1, "b": "2"].mutableCopy() as NSMutableDictionary
d["c"] = 9
println(d)
Swift part3
84 :デフォルトの名無しさん[sage]:2014/08/17(日) 13:31:26.48 ID:V8SXHhEt
あ、mutableCopy() なくてもいけたw

var d = ["a": 1, "b": "2"] as NSMutableDictionary
d["c"] = 9
println(d)

連レススマソ
Swift part3
92 :デフォルトの名無しさん[sage]:2014/08/17(日) 15:47:24.27 ID:V8SXHhEt
NSMutableDictionaryは参照型だから別に整合性はある

AnyやAnyObjectは祖先クラスじゃないから、[1, "a"]ってしたときに共通の祖先クラスがなくてSwiftの世界じゃ型を決められない

共通の祖先クラスがあればちゃんと型推論働く

class Sup {}
class SubA : Sup {}
class SubB : Sup {}
class SubC : Sup {}

var arr = [SubA(), SubB()] // <-ちゃんと[Sup]型になる
arr.append(SubC()) // [Sup]型だからSubCも突っ込める


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