在更新到Swift 5.2 / Xcode 11.4之后,出现以下代码警告:
extension Data {
init<T>(from value: T) {
var value = value
let pointer = UnsafeBufferPointer(start: &value, count: 1)
self.init(buffer: pointer)
}
func to<T>(type: T.Type) -> T {
return self.withUnsafeBytes { $0.load(as: T.self) }
}
}
在网上让指针= UnsafeBufferPointer(开始:&值,计数:1)我得到了
初始化“ UnsafeBufferPointer”会导致缓冲区指针悬空
我可以使用@silenceWarning,但这是肮脏的解决方案。也许我需要将指针存储在某个地方并在将来进行清理?