使用var,Swift说它不能像inout参数那样传递不可变值

时间:2016-08-27 21:21:20

标签: swift xcode swift3 xcode8 xcode8-beta6

我无法破译此错误消息。此代码编译并运行

struct A {
    var x: Int
}
var a = A(x: 123)
let result = withUnsafePointer(to: &a) {
    print("ptr is \($0)")
    // return 1
}
print("result is \(result)")

但是,如果取消注释return 1行,则编译失败。 Xcode突出显示&a并说:无法传递类型'inout A'的不可变值作为inout参数

这是什么意思?也许这只是一个错误的错误消息?

(Xcode 8,beta 6)

0 个答案:

没有答案