Qt Creator调试器中的PyString内容?
我有一个 PyString* 对象,我想查看它的内容。有没有办法在 Qt Creator 的调试器中看到这个 PyString 的文本?
PyObject *import_str = PyString_InternFromString("__import__");
如果有影响的话,Qt Creator 是 GDB 的一个前端工具。
2 个回答
0
我怀疑Qt Creator不能像显示QString
那样显示字符串的内容。这是因为PyObject
是一个自定义的类,Qt Creator和gdbv不知道怎么处理它。
举个例子:QString
也是一个自定义类,但Qt Creator加载了一些特殊的命令或模块,这样就能在调试器中直接显示字符串的值。
我自己没有这样做过,但我想应该有办法让gdb把正确的信息传递给Qt Creator。
0
你可以在最新的QtCreator中使用Python为任何类写调试信息,这样的信息会显示出来。其实这很简单。这要感谢gdb 7,它除了支持C++之外,还增加了对Python的支持。
你可以在/usr/share/qtcreator/gdbmacros
找到QtCreator自带的调试宏。
想了解更多信息,可以查看QtCreator的文档,或者看看这个来自Qt Labs的博客文章。