You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

OSX环境下使用LLDB查看C++类继承层级结构的方法咨询

LLDB查看C++类继承结构的解决方案

首先解释v *this报错原因

你使用的lldb-902版本属于较旧的Xcode配套版本,v在该版本中是version命令的别名,而非高版本中frame variable的简写,因此传入参数会触发参数错误。

可用的操作方法

  • 方法1:查看当前对象的完整继承层级+成员
    执行完整的frame variable命令即可展开所有父类结构:
frame variable *this

输出会按继承顺序依次列出Derived2自身成员、Derived1父类成员、Base基类成员,完整展示继承结构下的所有内容。

  • 方法2:单独查看某一级父类的对象视图
    你之前使用指针转换只会输出地址信息,改为引用转换即可展开对应层级的对象内容:
# 查看Derived1层级的内容
p (Derived1&)*this
# 查看Base基类层级的内容
p (Base&)*this
  • 方法3:查看类的静态继承定义
    如果不需要看当前对象的成员值,只需要看类的完整继承关系结构,使用image lookup命令查询类型定义即可:
image lookup -t Derived2

输出会打印Derived2的完整类型声明,包含所有父类的继承方式、继承顺序,也就是你需要的完整类继承树。

内容的提问来源于stack exchange,提问作者Igor

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.13 22:15:03