注意:这是一个相当幼稚的问题。
在 QT5 C 应用程序中进行调试和登录时,打印内部变量的值很有用,在Qt
中,常见方法是与朋友一起使用qDebug()
这个:
qDebug()<<"The value was: "<< myVar;
// Usually works well even for built-in Qt types
这似乎适用于许多内置的QT5特定类型,甚至是指针,但是在我们实际上不是输出日志的情况下,我们实际上是在构建一个字符串,这变得更加繁琐。
QString myString= "The value was: "+myVar;
// Usually doesn't work well for built-in Qt types
因此,问题是,获得内置QT类型的等效字符串表示的好方法是什么,因为您会从流式传输到qdebug()?
?或" Qt
类型的Java Tostring()等同于什么?
来自qdebug类文档,我可以发现它具有构造函数
QDebug::QDebug(QString *string)
构造写入给定字符串
的调试流
所以这应该有效:
QString myString;
QDebug stream(&myString);
stream <<"The value was: "<< myVar;
格式和内容的内容 不是API的一部分。他们可以随时改变。每次更新QT时,您都必须审核输出,否则除了调试外,您不得依赖它。这就是为什么API有意在调试输出和字符串之间有意转换。
相反,为所需类型实现自己的QTextStream
操作员,并使用流来构建字符串。