当我使用QTC(Creator)调试自己的C ++类时,我只在调试器中看到地址值。
我的课程不是QObjects
(因为它们是轻量级的,只是代表值)。但是有一个方法/运算符我可以超载吗?我试过了(哪个不行):
operator QString() const { return ..getMeMyQStringRepresentation.. ;}
而不是@0x....
我希望看到..getMeMyQStringRepresentation..
。有什么想法吗?
答案 0 :(得分:0)
我认为QtCreator实际使用的调试器与较低级别的表示相关联,具体取决于您的配置。但是,我相信标准安装最终会使用GDB。
也就是说,如果在GUI中找不到您想要做的事情,您可以移动到本机调试器并执行类似'print from.operator string()'的操作(如果已实现)。检查“与原生调试器进行交互”here。
另一个简单(但有点烦人)的方法是创建一个包含相同信息的局部变量,它显式地是一个字符串(或char数组),或者int,或者你想要的任何表示。