我有这段代码
var dataFormat: AudioStreamBasicDescription?
var propSize: UInt32 = UInt32(MemoryLayout<AudioStreamBasicDescription>.size)
try SCoreAudioError.check(status: AudioFileGetProperty(audioFileID!, kAudioFilePropertyDataFormat, &propSize, &dataFormat), "Couldn't get file's data format")
变量正在被填充,但 llbd 调试器显示我的变量 dataFormat
值为 nil
(通过使用 po dataFormat
打印) , 而变量检查器说这样的变量不是 nil
(它等于 some
有内容)
最佳答案
我找到了解决方案
在将其作为引用传递之前,我必须初始化 AudioStreamBasicDescription
var dataFormat = AudioStreamBasicDescription.init()
我很困惑,因为它看起来像通过引用传递一个空的可选然后被填充的模式在 opaque
类型中很常见(我认为)..
关于swift - AudioStreamBasicDescription 未被填充,llbd 显示为 nil,变量检查器没有,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50520772/