【发布时间】:2019-03-23 11:53:47
【问题描述】:
我有一个 UnsafeMutableRawPointer 的实例,并且想要检索它的整数表示。我正在尝试使用以下代码:
let pointer : UnsafeMutableRawPointer? = address(of: self)
let intRepresentation : UInt64 = UInt64(bitPattern: pointer)
但是 Swift 编译器会抛出错误:“无法转换 'UnsafeMutableRawPointer?' 类型的值?到预期的参数类型'Int64'"
声明为 public init(bitPattern pointer: UnsafeMutableRawPointer?) 的构造函数是 Swift.Math.Integers.UInt
在同一个文件中也有public init(bitPattern x: Int64)
我怎样才能使这段代码工作或以任何其他方式(但不是太荒谬,如字符串解析)将 UnsafeMutableRawPointer 转换为整数?
【问题讨论】:
标签: swift compiler-errors swift4