2015-02-10 41 views
0

以下代碼1.1工作正常,並在反射reflect(a)在1.21.2版反射EXC_BAD_ACCESS

class AClass { 
    var some : String = "Hans" 
    var thing : Double 
    init(t: Double) { 
     thing = t 
    } 
} 

class BClass : AClass { 

} 

var a = BClass(t: 1.1) 

var mirror = reflect(a) // FAILS 
for var index=0; index<mirror.count; ++index { 

} 

停止工作,儘管reflect(a).valueType會工作,另外給予更多的meaningfull輸出/信息比以前。

這使我對兩個問題:

  1. 是否有人知道與反思哪些改變呢?什麼可能是錯的?以前我也可以迭代Object的屬性。

  2. 我在哪裏可以檢查這些變化?在官方文檔中我沒有找到關於反思的任何內容,並且沒有關於博客或其他任何地方的反射更改的註釋,我可以以某種方式瀏覽源代碼? (從未嘗試過)

+1

看起來像1.2測試版中的錯誤 - 請[提交錯誤報告](https://bugreport.apple.com/)。 – 2015-02-10 19:09:35

+0

我無法在編譯的項目中重現崩潰,但它在Playground中失敗。 – 2015-02-10 19:15:29

+0

我把它粘貼在操場上,沒有問題。 – 2015-02-10 19:29:06

回答

0

更新:XCode 6.3 Beta 2 Swift 1.2:這是一個錯誤,現在它的工作原理。

事實證明,這是Swift 1.2中的一個(確認的)錯誤。我將在發佈時發佈更多信息。