看板 PLT 關於我們 聯絡資訊
沒有經驗,只是一些想法和疑問 @@ ※ 引述《macbuntu (邀怪)》之銘言: : 我試著看 Java Language Spec #15.25, 看了半天好像就是要靠 { A, N1, N2 } : 這種集合... 所以這表示不是所有 expression 都有唯一的 result type 嗎? 我試了一下 javac, 單純的 func(new X()) 和 func(new Y()) 也是 ambiguous. 這個意思不就是除了 void 以外,所有 exp 的 result type 都必須是集合? 不過似乎只需要針對有 overload 的 function 上的 argument 上做這樣的 集合檢查就好? 而 exp0 ? exp1 : exp2 的 result type 則會是 exp1 的 result type 與 exp2 的 result type 的交集。最後再跟 function argument 做交集, 結果超過一個以上就是 ambiguous. 其他狀況可能不需要這麼麻煩? -- By Gamers, For Gamers - from the past Interplay -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.135.28.18