lldb的expr命令,打印对象的完整结构,-R -T有作用吗?

请教一下:

看网上的文章(https://blog.csdn.net/hello_hwc/article/details/50491813)
讲lldb中的expr命令时,好像通过命令
expr -R – 变量
可以看到完整的对象结构,

可是我在自己尝试的时候,并不能打印出类似的结果,
(lldb) expr -R – demo
(_TtC10EncryptPro10SwiftModel *) $0 = 0x00006040000054f0
(lldb) expr -T – demo
(_TtC10EncryptPro10SwiftModel *) $1 = 0x00006040000054f0
(lldb) expr -R – model
(TestModel *) $2 = 0x00006040000354c0

请问这是什么原因?

lldb本身是不知道结构体的结构的。都是根据debug信息调用对应语言的前端分析Debug信息里的源码文件来获得的结构题信息

谢谢张总,还想再请教一下:
我在swift的项目中,再次使用命令:expr -R – model,可以打印出如下输出:
(lldb) expr -R – model
(TestSwift.SwiftModel) $R0 = 0x000060400000fe80 {
ObjectiveC.NSObject = {}
mark = {
_value = 120
}
}
想请教一下,是什么原理?

看下Swift LLDB的源码,可能是利用ObjC运行时获取的一部分信息