繁体   English   中英

输出 QVector3D 到 QString

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM