[英]Output QVector3D to QString
我很惊讶地发现 QVector3D 没有将 x、y 和 z 坐标输出为 QString 的内置方法。 我可以编写一个简单的函数来做到这一点,但我想知道是否有标准的方法来做到这一点?
您可以使用QDebug::QDebug(QString*)
和 QDebug 中的运算符 << :
QString str;
QDebug(&str) << QVector3D(1,2,3);
但由于该构造函数未明确声明,因此您可以省略 QDebug:
QString str;
&str << QVector3D(1,2,3);
(我不知道这是错误还是功能,以及您是否可以在 Qt 的未来版本中依赖第二种形式)。
如果需要特定格式,也可以使用 QString::number 函数。 不幸的是,我找不到比这种方法更有效的方法
QString("X:%1Y:%2Z:%3").arg(QString::number(location.x()), QString::number(location.y()), QString::number(location.z()));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.