我正在iOS应用中进行解析查询。如果查询为空,我会得到一个空对象数组。但是当我使用foo
索引到该数组时,不会抛出任何类型的错误,并且底部窗格/调试区域中不显示任何消息。我把打印声明放在可疑声明周围。它打印bar
但从不打印query.findObjectsInBackground { (objects: [PFObject]?, error: Error?) in
print("foo")
let _ = objects![0]
print("bar")
}
。
Fatal error: Index out of range
如果在后台线程中运行,我怀疑例外运行时错误没有正常处理,但情况也是如此。我运行了以下代码,并按照您的预期得到objects
。这意味着它与query.findObjectsInBackground { (objects: [PFObject]?, error: Error?) in
let x:[PFObject]? = []
print("foo")
let _ = x![0]
print("bar")
}
变量有关。
{{1}}