QtCreator 调试助手 "hello world"
QtCreator debug helpers "hello world"
我正在尝试开始使用 debug helpers in QtCreator。
但我什至连简单的事情都搞不定。
我制作了这个简单的 python 文件:
from dumper import *
def qdump_TestClass(d, value):
d.putNumChild(0)
d.putValue("hi")
然后在此处添加该文件:
这是 class:
的 C++ 定义
struct TestClass {
int x, y;
};
我一直在按照 中的步骤操作。但这对我不起作用。
在函数名中使用双下划线:
def qdump__TestClass(d, value):
^^
并且,根据文档更正您的路径:
~/<Qt>/Tools/QtCreator/share/qtcreator/debugger/personaltypes.py
使用您的 Qt 文件夹名称(或路径,如果它不在 ~
)。
该对话框中显示的路径是相对于您的 app
。
这是一个完整的工作示例:
main.cpp
struct TestClass
{
int x {12}, y {34};
};
int main()
{
TestClass t;
(void) t;
return 0;
}
personaltypes.py
from dumper import *
def qdump__TestClass(d, value):
d.putValue("TestClass")
d.putNumChild(2)
if d.isExpanded():
with Children(d):
d.putSubItem("x", value["x"])
d.putSubItem("y", value["y"])
截图:
我正在尝试开始使用 debug helpers in QtCreator。
但我什至连简单的事情都搞不定。
我制作了这个简单的 python 文件:
from dumper import *
def qdump_TestClass(d, value):
d.putNumChild(0)
d.putValue("hi")
然后在此处添加该文件:
这是 class:
的 C++ 定义struct TestClass {
int x, y;
};
我一直在按照
在函数名中使用双下划线:
def qdump__TestClass(d, value):
^^
并且,根据文档更正您的路径:
~/<Qt>/Tools/QtCreator/share/qtcreator/debugger/personaltypes.py
使用您的 Qt 文件夹名称(或路径,如果它不在 ~
)。
该对话框中显示的路径是相对于您的 app
。
这是一个完整的工作示例:
main.cpp
struct TestClass
{
int x {12}, y {34};
};
int main()
{
TestClass t;
(void) t;
return 0;
}
personaltypes.py
from dumper import *
def qdump__TestClass(d, value):
d.putValue("TestClass")
d.putNumChild(2)
if d.isExpanded():
with Children(d):
d.putSubItem("x", value["x"])
d.putSubItem("y", value["y"])
截图: