我有一个自定义课程Foo:
class Foo
{
public:
// getters and setters
// ...
private:
QString string;
QStringList list;
int number;
}
Foo的序列化按预期工作:
QDataStream &operator<
{
stream<
return stream;
}
但是当我尝试序列化QList时,我得到了
error C2679: binary '<
指向相应的Qt代码(qdatastream.h):
template
QDataStream& operator<& l)
{
s << quint32(l.size());
for (int i = 0; i < l.size(); ++i)
s << l.at(i); //
return s;
}
我知道QList::at()会返回const T &,但我不知道为什么它不能在这里编译。请指出我的错误,我想知道如何解决这个问题。另外,如果我错过了必要的代码部分,请告诉我。谢谢!
[修改]:
作为参考,我的环境是Qt 4.8.5,MSVC2010 / Win 7,我正在使用