加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

LLDB中的po与swift

发布时间:2020-12-14 06:03:41 所属栏目:百科 来源:网络整理
导读:如何在使用LLDB的Swift应用程序中绘制变量的值? 早些时候它像po variable_name 现在我通常得到一些讨厌的错误,如: (lldb) po aerror: EXPR:11:5: error: use of unresolved identifier '$__lldb_injected_self' $__lldb_injected_self.$__lldb_wrapped_ex
如何在使用LLDB的Swift应用程序中绘制变量的值?

早些时候它像po variable_name

现在我通常得到一些讨厌的错误,如:

(lldb) po a
error: <EXPR>:11:5: error: use of unresolved identifier '$__lldb_injected_self'
    $__lldb_injected_self.$__lldb_wrapped_expr_2(     
    ^
这个错误听起来像是可能是因为DWARF不告诉LLDB在哪里找到你的“自我”对象。鉴于Swift的本质,LLDB需要知道自我的类型,以便能够在本地作用域内插入一个表达式
找到这是你的问题的一种方法是在LLDB提示符处:

(lldb)帧变量-L self

你可能不会看到它的位置。值得提交的错误报告,只是为了跟踪你的具体繁殖情况

无论如何,要得到你的问题的大部分。在Swift中,没有像ObjC这样的“打印描述”的语言制裁机制,所以虽然你可以键入“po self”,除非self是一个Objective-C类型,你几乎看到同样的事情, “甚至”帧变量自我“会告诉你 – 这完全基于LLDB数据格式化机制。如果你想钩住自定义Swift对象的外观,强制引用是:http://lldb.llvm.org/varformats.html

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读