c++ - QDataStream : Overloading >> for decorated QVector

标签 c++ qt stream operator-overloading

我有一个类MyVector : QVector<int> ,我有一个 ID 和一个 QVector附在上面的标签。重载时operator>>用于从 QDataStream 流式传输, 我可以简单地链接已经定义的 operator>> -ID 和标签 vector 的函数。但是我如何访问 vector 数据本身以进行流式传输?我不能简单地使用 istream >> myVector ,因为这就是我要定义的,给出无尽的递归。感谢您的建议。

最佳答案

您需要将您的实例转换回原始 QVector 父类(super class),以便调用正确的 >> 运算符实现。

istream >> static_cast<QVector<int>>(myVector)

关于c++ - QDataStream : Overloading >> for decorated QVector,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19115418/

相关文章:

c++ - 如何对传递给可变参数宏的可变参数求和?

c++ - Qt:MouseMove 不起作用

javascript - 如何使用流在 node.js 中提取 .tar.bz2?

c++ - Windows Server 2012 服务中的 SOCKET 连接问题

c++ - const char& 作为函数的参数

c++ - 如何从 Qt Creator 中的继承类自动创建虚方法?

qt - 在 QML ScrollView 中增加鼠标滚轮步骤

c# - 在 C# 中实现管道 - 使用哪些(流?)类?

scala - 如何在 Scala 中创建提供 f(n)=f(n-2)+f(n-3) 的流

c++ - 分段故障?