std :: ostream到QDataStream [英] std::ostream to QDataStream

查看:434
本文介绍了std :: ostream到QDataStream的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我为MyClass重载了<<'运算符。

I have overloaded '<<' operator for MyClass.

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



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

Now I want to convert std::ostream to QDataStream rather than converting MyClass to QDataStream.

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

这样的。
您的帮助将不胜感激。

Something like this. Your help will be appreciated.

推荐答案

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

You can't just convert one into the other. But you can use QBuffer as a workaround. It is a QIODevice, so you can create a QDataStream from it. When done writing your data, get the QByteArray from the buffer and use its data to write to your std::ostream.

这篇关于std :: ostream到QDataStream的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆