当我尝试打印出一个对象的描述时,我在
Swift调试器中遇到了一个非常令人讨厌的问题.当尝试打印和对象时,使用po命令或fr v命令,我会收到消息
错误:< EXPR>:1:1:错误:使用未解析的标识符’self’
自
^
要么
self =<无法确定字节大小.>
这里发生了什么?是否有原因为什么调试器不能读取像自我的东西?
<Unable to determine byte size>
是(不可否认有些神秘)的错误信息,当LLDB不明白某种东西的类型时,LLDB将打印出来.
让我详细说一下吧.当您键入表达式或执行框架变量时,调试器必须评估您提供的任何代码,或查找所要求的变量.
为了将结果呈现给你,它也必须了解事物的类型.例如,Int是一个具有数字值的数值,它的大小与您计算机上的指针大小相匹配,…(也就是说,要确切地说,Int是具有数值的成员的一个东西. ..但是LLDB的摘要远离你).字符串是有一些文本的东西(再次,它有点棘手,但是LLDB的摘要).调试器喜欢知道的事情之一是类型的“字节大小”,这种类型的对象占用的内存中有多少字节?
有时,调试器无法理解正在讨论的类型.当这种情况发生时,显然,无法确定的事情之一是字节大小.因此,消息.
如果遇到调试器无法在应用程序中推断类型的情况,请提交错误http://bugreport.apple.com