【问题标题】:Evaluate Expression LLDB Python C++ Type Formatter评估表达式 LLDB Python C++ 类型格式化程序
【发布时间】:2022-01-21 17:58:25
【问题描述】:

我正在尝试为变体类型制作 lldb 自定义类型格式化程序,但我似乎无法对要格式化的值调用查询成员函数。我有一个名为 typeIndex 的 size_t 成员,可以通过调用 index() 获得。我可以通过直接通过具有名称的 get 子成员获取该值,但我似乎无法调用直接返回该值的 index() 函数。我需要做什么才能在被格式化的类型上调用函数?

def format_variant(valobj, internal_dict):
    a = valobj.GetChildMemberWithName("typeIndex").GetValueAsUnsigned()
    b = valobj.EvaluateExpression(".index()").GetValueAsUnsigned()
    
    print(a)
    print(b)

b 总是没有值,a 很好。

【问题讨论】:

  • 为什么这个问题没有 Python 标签?当你的问题与 C++ 无关并且只包含 Python 代码时,为什么会有 C++ 标签?

标签: python c++ formatting lldb


【解决方案1】:

你想要评估“index()”而不是“.index()”

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-12-21
    • 1970-01-01
    • 2017-02-09
    • 2013-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多