我正在快速阅读内存安全章节,并想尝试这个例子:
var stepSize = 1
func increment(_ number: inout Int) {
number += stepSize
}
increment(&stepSize)
如果它说由于对stepsize
变量的访问冲突(长期书面访问)而导致错误,它实际上会编译并给我正确的答案(即2)。
谁能举例说明长期访问变量何时会导致错误?我不能带一个。
编辑:
我在 Xcode 9.2 上的操场上进行了测试
我正在快速阅读内存安全章节,并想尝试这个例子:
var stepSize = 1
func increment(_ number: inout Int) {
number += stepSize
}
increment(&stepSize)
如果它说由于对stepsize
变量的访问冲突(长期书面访问)而导致错误,它实际上会编译并给我正确的答案(即2)。
谁能举例说明长期访问变量何时会导致错误?我不能带一个。
编辑:
我在 Xcode 9.2 上的操场上进行了测试