這一個真的讓我感到困惑。 我有一本字典,可以跟蹤錯誤和警告的次數。 那麼在if (...)
區塊中,也是圖片,我正在測試0錯誤,並且出於某種原因,我試過的每個代碼組合都說錯誤數> 0爲真。if語句中的意外結果
下面是來自LLDB控制檯一些結果...
(LLDB)PO violationCounts [@ 「錯誤」]
(LLDB)PO [violationCounts [@「錯誤「]類]
__NSCFNumber
(LLDB)p violationCounts [@」 錯誤「]> 0 ...(布爾)
$ 2 =真
(LLDB)P((int)的violationCounts [@ 「錯誤」])> 0(布爾)
$ 3 =真
爲什麼這個評估爲違規計數> 0
閱讀「NSNumber」文檔,您會發現問題。 HTH – CRD
Dooohhh ...數字旁邊的(int)完全沒有怪物。甚至沒有注意到左邊的NSCFNumber,甚至沒有注意到[class]的結果。我真的需要一些睡眠。 –