std :: ostream到QDataStream

时间:2013-12-02 14:50:33

标签: c++ qt operator-overloading

我重载'<<' MyClass的运算符。

friend std::ostream& operator << (std::ostream& out, const MyClass& Obj);

现在我想将std :: ostream转换为QDataStream,而不是将MyClass转换为QDataStream。

friend QDataStream operator << (QDataStream& out, std:ostream&);

像这样的东西。 我们将非常感谢您的帮助。

1 个答案:

答案 0 :(得分:3)

你不能只将一个转换为另一个。但您可以使用QBuffer作为解决方法。它是QIODevice,因此您可以从中创建QDataStream。完成数据写入后,从缓冲区获取QByteArray并使用其数据写入std::ostream