【发布时间】:2019-04-18 14:44:27
【问题描述】:
我想在 Swift 中获取一个值类型常量的内存地址。例如,它看起来像变量:
我的代码:
var value = 10
withUnsafePointer(to: &value) {
print(" str value \(value) has address: \($0)")
}
【问题讨论】:
-
withUnsafePointer(to:_:)的第一个参数不是inout。使用它。 -
你需要它做什么?在您的示例中,如果您有
let value = 10,则可能没有与之关联的地址。编译器可能会将其分解并使用常量。 -
我想知道值类型在我们将其传递给方法或更改后立即复制
-
所以这真的是关于写时复制语义的问题吗?那你为什么不问那个问题呢?
标签: swift