我有一些索引超出范围错误的代码,所以我在该代码之前设置了一个断点:
func drawBalls(_ rect: CGRect) {
var alpha = 0xff000000
for ii in 0...(ROWS * COLUMNS - 1) {
alpha = 0xff000000 //I set breakpoint here
if balls[ii].color == 0 { continue } //fatalError is here
drawBall(x: X_OFF + (ii % COLUMNS) * x_stride, y: Y_OFF + ((ii / COLUMNS) % ROWS) * y_stride, score: balls[ii].score, color_code: balls[ii].color, alpha: alpha, rect: rect)
}
}
但是,调试仍会显示fatalError,更糟糕的是调试器左侧isn't showing up。
我知道fatalError在这种情况下意味着什么,并且我的程序中第一次应用程序崩溃是在我设置的断点之后的行中。有谁知道为什么会这样?