是否有一个C ++等同于XCode 7的objective-c -debugDescription方法?

时间:2016-03-03 15:15:25

标签: c++ xcode debugging llvm

在Objective-C中,您可以向返回字符串的类添加一个名为-debugDescription的方法。 XCode调试器将调用此方法以在调试器中显示类的值。在C ++中是否有相同的东西?

2 个答案:

答案 0 :(得分:1)

否(不具备普通语言提供的功能)。与Objective-C的NSObject(或NSProxy)相比,C ++没有所谓的根对象。对于这样的metainfo / introspection / reflection,您必须使用Qt等库或其他支持此类功能的库。

答案 1 :(得分:0)

虽然不那么通用,但您可以将自己的描述方法添加到某些感兴趣的类中,并在运行时从控制台po添加该方法。

例如

std::string your_class::desc()
{
    return "test";
}

(lldb) po ((your_class*)0x000000010072adf8)->desc()
"test"