- 这样子的错误, 是指 当前值发生溢出. 发生溢出时, 并不会抛出一个无效值, 而是直接抛出错误异常. 导致代码运行错误.
- 解决办法是: 运用 Swift 的值溢出操作符 & 进行优化. (&+ &- &* &>> &<< 等)
- 举一个官方的例子:
var x: Int8 = 10
x &+= 21
// x == 31
var y: Int8 = 100
y &+= 121
// y == -35 (after overflow)
- 其他例如 &- &* &>> &<< 可以参考官方给出的例子 都有解释 非常清晰.